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]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to