Reviewed-by: Ray Ni <ray...@intel.com> > -----Original Message----- > From: Wu, Hao A <hao.a...@intel.com> > Sent: Thursday, February 6, 2020 1:24 PM > To: devel@edk2.groups.io > Cc: Wu, Hao A <hao.a...@intel.com>; Kubacki, Michael A > <michael.a.kuba...@intel.com>; Kinney, Michael D > <michael.d.kin...@intel.com>; Dong, Eric <eric.d...@intel.com>; Ni, Ray > <ray...@intel.com>; Laszlo Ersek > <ler...@redhat.com> > Subject: [PATCH v1 1/2] Revert UefiCpuPkg/MpInitLib: Relocate microcode patch > fields in CPU_MP_DATA > > This reverts commit 88bd06616617ef2569f093f7b51893c11ad78e26. > > REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2465 > > Commit 88bd0661661 relocates the 'MicrocodePatchAddress' and > 'MicrocodePatchRegionSize' fields in structure CPU_MP_DATA to ensure that > they can be properly passed between different architectures. > > However, such change is not backward compatible with the scenario like > pre-existing binaries such as FSP. These binaries are built when the code > base has a different version of the CPU_MP_DATA structure definition. This > may cause issues when accessing the 'MicrocodePatchAddress' and > 'MicrocodePatchRegionSize' fields, since their offsets are different > (between PEI phase in the FSP binaries and DXE phase in current code > implementation). > > Cc: Michael Kubacki <michael.a.kuba...@intel.com> > Cc: Michael D Kinney <michael.d.kin...@intel.com> > Cc: Eric Dong <eric.d...@intel.com> > Cc: Ray Ni <ray...@intel.com> > Cc: Laszlo Ersek <ler...@redhat.com> > Signed-off-by: Hao A Wu <hao.a...@intel.com> > --- > UefiCpuPkg/Library/MpInitLib/MpLib.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/UefiCpuPkg/Library/MpInitLib/MpLib.h > b/UefiCpuPkg/Library/MpInitLib/MpLib.h > index 7c62d75acc..d7e20f0b74 100644 > --- a/UefiCpuPkg/Library/MpInitLib/MpLib.h > +++ b/UefiCpuPkg/Library/MpInitLib/MpLib.h > @@ -219,8 +219,6 @@ struct _CPU_MP_DATA { > UINT64 CpuInfoInHob; > UINT32 CpuCount; > UINT32 BspNumber; > - UINT64 MicrocodePatchAddress; > - UINT64 MicrocodePatchRegionSize; > // > // The above fields data will be passed from PEI to DXE > // Please make sure the fields offset same in the different > @@ -264,6 +262,8 @@ struct _CPU_MP_DATA { > UINT8 Vector; > BOOLEAN PeriodicMode; > BOOLEAN TimerInterruptState; > + UINT64 MicrocodePatchAddress; > + UINT64 MicrocodePatchRegionSize; > > // > // Whether need to use Init-Sipi-Sipi to wake up the APs. > -- > 2.12.0.windows.1
-=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#54111): https://edk2.groups.io/g/devel/message/54111 Mute This Topic: https://groups.io/mt/71015995/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-