On Tue, April 17, 2018 10:31 am, Rudolf Marek wrote: > Hi, > > > Dne 17.4.2018 v 12:09 awokd via coreboot napsal(a): > >> At what byte locations in the header is the equivalence table? I was >> looking for this... > > Hm I'm not aware where is it documented, or if there is some tool to > manipulate it/dump the structure. Maybe it could be added to some existing > tool?
I ran into that too, couldn't find it documented anywhere! > Here is what I deduced from Linux arch/x86/kernel/cpu/microcode/amd.c > + header files > > > + 0 u32 UCODE_MAGIC > + 4 u32 UCODE_EQUIV_CPU_TABLE_TYPE (0x0) > + 8 u32 size of following equiv table say "N" > > > Then this follows, the last table has installed_cpu_cpuid == 0 > > > u32 installed_cpu_cpuid u32 fixed_errata_mask u32 fixed_errata_compare u16 > equiv_cpu u16 res > > + N u32 UCODE_UCODE_TYPE (0x1) > + N + 4 u32 sizeof blob (without this header) > + N + 8 microcode blob from github follows here > ... > Then after that, there clould be again > > > + X u32 UCODE_UCODE_TYPE > + X + 4 u32 SECTION_SIZE > + X + 8 microcode header (blob from github follows here) Thank you; I'll try to cross-reference against the AGESA code and see if I can work it out. That was the only way I could get my corebooted system to recognize my equivalent CPU for microcode updates before. -- coreboot mailing list: [email protected] https://mail.coreboot.org/mailman/listinfo/coreboot

