Hi Ray, Accroding to https://edk2.groups.io/g/devel/files/Designs/2020/0214/Support%20the%202nd%20Microcode%20FV%20Flash%20Region.pdf The ShadowMicrocodePei provide a FIT based shadow microcode ppi to MpInitLib. It's needed.
Best, Aaron > -----Original Message----- > From: Ni, Ray <[email protected]> > Sent: Wednesday, September 23, 2020 2:25 PM > To: Li, Aaron <[email protected]>; [email protected] > Cc: Chaganty, Rangasai V <[email protected]>; Fu, Siyuan > <[email protected]> > Subject: RE: [PATCH v1 1/1] IntelSiliconPkg/ShadowMicrocodePei: Add PCD > for shadowing all microcode. > > MpInitLib already contains logic to shadow microcode to memory. > Is this still needed? > > > -----Original Message----- > > From: Li, Aaron <[email protected]> > > Sent: Wednesday, August 12, 2020 3:55 PM > > To: [email protected] > > Cc: Ni, Ray <[email protected]>; Chaganty, Rangasai V > > <[email protected]>; Fu, Siyuan <[email protected]> > > Subject: [PATCH v1 1/1] IntelSiliconPkg/ShadowMicrocodePei: Add PCD for > > shadowing all microcode. > > > > This patch is to add a PCD PcdShadowAllMicrocode to support shadowing > > all microcode patch to memory. > > > > BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=2891 > > > > Signed-off-by: Aaron Li <[email protected]> > > Cc: Ray Ni <[email protected]> > > Cc: Rangasai V Chaganty <[email protected]> > > Cc: Siyuan Fu <[email protected]> > > --- > > > > > Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode/ShadowMicrocodeP > ei.c > > | 4 ++++ > > > > > Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode/ShadowMicrocodeP > ei.i > > nf | 3 +++ > > Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec > > | 7 +++++++ > > 3 files changed, 14 insertions(+) > > > > diff --git > > > a/Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode/ShadowMicrocod > ePei > > .c > > > b/Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode/ShadowMicrocod > ePei > > .c > > index 8d6574f66794..5c7ee6910c8e 100644 > > --- > > > a/Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode/ShadowMicrocod > ePei > > .c > > +++ > > > b/Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode/ShadowMicrocod > ePei > > .c > > @@ -132,6 +132,10 @@ IsMicrocodePatchNeedLoad ( > > CPU_MICROCODE_EXTENDED_TABLE *ExtendedTable; > > > > UINTN Index; > > > > > > > > + if (FeaturePcdGet (PcdShadowAllMicrocode)) { > > > > + return TRUE; > > > > + } > > > > + > > > > // > > > > // Check the 'ProcessorSignature' and 'ProcessorFlags' in microcode patch > > header. > > > > // > > > > diff --git > > > a/Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode/ShadowMicrocod > ePei > > .inf > > > b/Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode/ShadowMicrocod > ePei > > .inf > > index 019400ab31da..581780add891 100644 > > --- > > > a/Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode/ShadowMicrocod > ePei > > .inf > > +++ > > > b/Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode/ShadowMicrocod > ePei > > .inf > > @@ -39,5 +39,8 @@ [Guids] > > gEdkiiMicrocodeShadowInfoHobGuid > > > > gEdkiiMicrocodeStorageTypeFlashGuid > > > > > > > > +[Pcd] > > > > + gIntelSiliconPkgTokenSpaceGuid.PcdShadowAllMicrocode > > > > + > > > > [Depex] > > > > TRUE > > > > diff --git a/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec > > b/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec > > index e4a7fec3a3ea..3a12fe99fac6 100644 > > --- a/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec > > +++ b/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec > > @@ -76,6 +76,13 @@ [Protocols] > > # Include/Protocol/PlatformDeviceSecurityPolicy.h > > > > gEdkiiDeviceSecurityPolicyProtocolGuid = {0x7ea41a99, 0x5e32, 0x4c97, > > {0x88, 0xc4, 0xd6, 0xe7, 0x46, 0x84, 0x9, 0xd4}} > > > > > > > > +[PcdsFeatureFlag] > > > > + ## Indicates if all microcode update patches shall be shadowed to > memory. > > > > + # TRUE - All microcode patches will be shadowed.<BR> > > > > + # FALSE - Only the microcode for current present processors will be > > shadowed.<BR> > > > > + # @Prompt Shadow all microcode update patches. > > > > + > > > gIntelSiliconPkgTokenSpaceGuid.PcdShadowAllMicrocode|FALSE|BOOLEAN| > 0x > > 00000006 > > > > + > > > > [PcdsFixedAtBuild, PcdsPatchableInModule] > > > > ## Error code for VTd error.<BR><BR> > > > > # EDKII_ERROR_CODE_VTD_ERROR = (EFI_IO_BUS_UNSPECIFIED | > > (EFI_OEM_SPECIFIC | 0x00000000)) = 0x02008000<BR> > > > > -- > > 2.23.0.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#65551): https://edk2.groups.io/g/devel/message/65551 Mute This Topic: https://groups.io/mt/76143134/21656 Group Owner: [email protected] Unsubscribe: https://edk2.groups.io/g/devel/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
