[edk2-devel] [PATCH] IntelSiliconPkg: Define PCDs for microcode location in flash

Ni, Ray posted 1 patch 2 weeks, 5 days ago
Failed in applying to current master (apply log)
Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)

[edk2-devel] [PATCH] IntelSiliconPkg: Define PCDs for microcode location in flash

Posted by Ni, Ray 2 weeks, 5 days ago
3 PCDs are defined assuming that microcode is put in the end of a FV:
PcdFlashFvMicrocodeBase: The base address of the microcode FV
PcdFlashFvMicrocodeSize: The size of the microcode FV
PcdFlashMicrocodeOffset: The microcode offset relative to the FV
                         base address

The 3 new PCDs are to replace the following existing PCDs in
MinPlatformPkg and IntelFsp2WrapperPkg.

The ones in MinPlatformPkg will be removed in a separate patch.
The ones in IntelFsp2WrapperPkg will be re-positioned as only using
inside IntelFsp2WrapperPkg\Library\SecFspWrapperPlatformSecLibSample.

Defining PCDs in IntelSiliconPkg is because certain close-source
silicon code depends on these PCDs but the silicon code cannot depend
on MinPlatformPkg.

MinPlatformPkg contains the below 3 PCDs:
PcdFlashFvMicrocodeBase:   Same meaning as
                           IntelSiliconPkg.PcdFlashFvMicrocodeBase
PcdFlashFvMicrocodeSize:   Same meaning as
                           IntelSiliconPkg.PcdFlashFvMicrocodeSize
PcdFlashFvMicrocodeOffset: The FV offset relative to the firmware
                           base address.
Note: MinPlatformPkg doesn't contain the PCD that tells the microcode
offset relative to the FV base address.

IntelFsp2WrapperPkg contains the below 3 PCDs:
PcdCpuMicrocodePatchAddress:    Same meaning as
                             IntelSiliconPkg.PcdFlashFvMicrocodeBase
PcdCpuMicrocodePatchRegionSize: Same meaning as
                             IntelSiliconPkg.PcdFlashFvMicrocodeSize
PcdFlashMicrocodeOffset:        Same meaning as
                             IntelSiliconPkg.PcdFlashMicrocodeOffset

Change-Id: I708abfa4a9309cbaedd5c4e4f483ec9f0d5e7625
Reviewed-by: Ray Ni <ray.ni@intel.com>
Cc: Rangasai V Chaganty <rangasai.v.chaganty@intel.com>
---
 Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec b/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec
index 4a2cbca5..6611c3af 100644
--- a/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec
+++ b/Silicon/Intel/IntelSiliconPkg/IntelSiliconPkg.dec
@@ -3,7 +3,7 @@
 #
 # This package provides common open source Intel silicon modules.
 #
-# Copyright (c) 2016 - 2020, Intel Corporation. All rights reserved.<BR>
+# Copyright (c) 2016 - 2021, Intel Corporation. All rights reserved.<BR>
 # SPDX-License-Identifier: BSD-2-Clause-Patent
 #
 ##
@@ -90,6 +90,13 @@
   # @Prompt Error code for VTd error.
   gIntelSiliconPkgTokenSpaceGuid.PcdErrorCodeVTdError|0x02008000|UINT32|0x00000005
 
+  gIntelSiliconPkgTokenSpaceGuid.PcdFlashFvMicrocodeBase|0|UINT32|0x00000007
+  gIntelSiliconPkgTokenSpaceGuid.PcdFlashFvMicrocodeSize|0|UINT32|0x00000008
+
+  ## This is the microcode offset relative to the FV base address.
+  #  Microcode address equals to PcdFlashFvMicrocodeBase + PcdFlashMicrocodeOffset.
+  gIntelSiliconPkgTokenSpaceGuid.PcdFlashMicrocodeOffset|0|UINT32|0x0000000A
+
 [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]
   ## This is the GUID of the FFS which contains the Graphics Video BIOS Table (VBT)
   # The VBT content is stored as a RAW section which is consumed by GOP PEI/UEFI driver.
-- 
2.27.0.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#73313): https://edk2.groups.io/g/devel/message/73313
Mute This Topic: https://groups.io/mt/81622347/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-