cregit-Linux how code gets into the kernel

Release 4.14 arch/x86/include/asm/microcode_amd.h

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _ASM_X86_MICROCODE_AMD_H

#define _ASM_X86_MICROCODE_AMD_H

#include <asm/microcode.h>


#define UCODE_MAGIC			0x00414d44

#define UCODE_EQUIV_CPU_TABLE_TYPE	0x00000000

#define UCODE_UCODE_TYPE		0x00000001


#define SECTION_HDR_SIZE		8

#define CONTAINER_HDR_SZ		12


struct equiv_cpu_entry {
	
u32	installed_cpu;
	
u32	fixed_errata_mask;
	
u32	fixed_errata_compare;
	
u16	equiv_cpu;
	
u16	res;
} __attribute__((packed));


struct microcode_header_amd {
	
u32	data_code;
	
u32	patch_id;
	
u16	mc_patch_data_id;
	
u8	mc_patch_data_len;
	
u8	init_flag;
	
u32	mc_patch_data_checksum;
	
u32	nb_dev_id;
	
u32	sb_dev_id;
	
u16	processor_rev_id;
	
u8	nb_rev_id;
	
u8	sb_rev_id;
	
u8	bios_api_rev;
	
u8	reserved1[3];
	
u32	match_reg[8];
} __attribute__((packed));


struct microcode_amd {
	
struct microcode_header_amd	hdr;
	
unsigned int			mpb[0];
};


#define PATCH_MAX_SIZE PAGE_SIZE

#ifdef CONFIG_MICROCODE_AMD
extern void __init load_ucode_amd_bsp(unsigned int family);
extern void load_ucode_amd_ap(unsigned int family);
extern int __init save_microcode_in_initrd_amd(unsigned int family);
void reload_ucode_amd(void);
#else

static inline void __init load_ucode_amd_bsp(unsigned int family) {}

Contributors

PersonTokensPropCommitsCommitProp
Jacob Shin872.73%133.33%
Borislav Petkov218.18%133.33%
Andy Shevchenko19.09%133.33%
Total11100.00%3100.00%


static inline void load_ucode_amd_ap(unsigned int family) {}

Contributors

PersonTokensPropCommitsCommitProp
Jacob Shin770.00%150.00%
Borislav Petkov330.00%150.00%
Total10100.00%2100.00%


static inline int __init save_microcode_in_initrd_amd(unsigned int family) { return -EINVAL; }

Contributors

PersonTokensPropCommitsCommitProp
Jacob Shin1381.25%150.00%
Borislav Petkov318.75%150.00%
Total16100.00%2100.00%


void reload_ucode_amd(void) {}

Contributors

PersonTokensPropCommitsCommitProp
Borislav Petkov6100.00%1100.00%
Total6100.00%1100.00%

#endif #endif /* _ASM_X86_MICROCODE_AMD_H */

Overall Contributors

PersonTokensPropCommitsCommitProp
Jacob Shin18884.30%222.22%
Borislav Petkov3214.35%555.56%
Andy Shevchenko20.90%111.11%
Greg Kroah-Hartman10.45%111.11%
Total223100.00%9100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.