Attention is currently required from: V Sowmya, Saurabh Mishra, Subrata Banik, harsha.b.r@intel.com, Kangheui Won, Reka Norman, Rizwan Qureshi, Krishna P Bhat D, Usha P. Hello V Sowmya, build bot (Jenkins), Saurabh Mishra, Subrata Banik, harsha.b.r@intel.com, Kangheui Won, Reka Norman, Rizwan Qureshi, Krishna P Bhat D, Usha P,
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/62323
to look at the new patch set (#5).
Change subject: soc/intel/common : Remove use of CPUID_EXTENDED_CPU_TOPOLOGY_V2 ......................................................................
soc/intel/common : Remove use of CPUID_EXTENDED_CPU_TOPOLOGY_V2
In x86 processor as per Software Developer's manual there are 2 ways to get CPU topology by querying the processor. BIOS can use CPUID instruction using CPUID_EXTENDED_CPU_TOPOLOGY(0x0B) as input or CPUID_EXTENDED_CPU_TOPOLOGY_V2(0x1F) as an input. Both will return valid CPU topology data.
While CPUID_EXTENDED_CPU_TOPOLOGY(0x0B) returns data related to number of threads, core and package, V2(0x1F) provide more granular information regarding Die, package etc.
Coreboot uses V2 to inorder to query and return CPU topology data as of now since that's the highest instruction of CPUID which is supported, there is a mismatch in the way FSP processes the data.
FSP queries coreboot MP services to get CPU topology data which uses structure which is either compatible with CPUID_EXTENDED_CPU_TOPOLOGY or CPUID_EXTENDED_CPU_TOPOLOGY_V2. Since Coreboot returns V2 data in structure which is expecting data for CPUID_EXTENDED_CPU_TOPOLOGY, there is hang observed on ADL_N CPUs.
To Solve this problem coreboot should assign CPUID_EXTENDED_CPU_TOPOLOGY data to processor_info_buffer->Location structure so remove use of CPUID_EXTENDED_CPU_TOPOLOGY_V2
Ref EDK2 code: https://github.com/tianocore/edk2/tree/edk2-stable202202 Files: MdePkg/Include/Protocol/MpService.h#L182 UefiCpuPkg/Library/MpInitLib/MpLib.c#L2127 UefiCpuPkg/Library/MpInitLib/MpLib.c#L2120 Ref doc: Software Developer’s Manual volume 3 CH 8.9
BUG=b:220652104 TEST=Build and boot ADL-N RVP with debug FSP and verify CPU topology value and didn't Observe hang while booting.
Change-Id: I1e6832fb03fcc59d33df0ba1664019727185d10a Signed-off-by: Ronak Kanabar ronak.kanabar@intel.com --- M src/soc/intel/common/block/cpu/cpulib.c 1 file changed, 1 insertion(+), 6 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/23/62323/5