Remove hard code value and create new PCDs for OpROM reserved range in CSM module.

Signed-off-by: Li Elvin <elvin.li@intel.com>
Reviewed-by: Yao Jiewen <jiewen.yao@intel.com>


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13991 6f19259b-4bc3-4df7-8a09-765794883524
diff --git a/IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec b/IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec
index b4083bc..ce67160 100644
--- a/IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec
+++ b/IntelFrameworkModulePkg/IntelFrameworkModulePkg.dec
@@ -199,6 +199,18 @@
   ## The value should be a multiple of 4KB.

   gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdEbdaReservedMemorySize|0x8000|UINT32|0x30000005

 

+  ## The PCD is used to specify memory base address for OPROM to find free memory.

+  # Some OPROMs do not use EBDA or PMM to allocate memory for its usage, 

+  # instead they find the memory filled with zero from 0x20000.

+  # The range should be below the EBDA reserved range from 

+  # (CONVENTIONAL_MEMORY_TOP - PcdEbdaReservedMemorySize) to CONVENTIONAL_MEMORY_TOP.

+  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdOpromReservedMemoryBase|0x60000|UINT32|0x3000000c

+  

+  ## The PCD is used to specify memory size with bytes for OPROM to find free memory.

+  ## The value should be a multiple of 4KB. And the range should be below the EBDA reserved range from 

+  # (CONVENTIONAL_MEMORY_TOP - PcdEbdaReservedMemorySize) to CONVENTIONAL_MEMORY_TOP.

+  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdOpromReservedMemorySize|0x28000|UINT32|0x3000000d

+

   ## The PCD is used to specify memory size with page number for a pre-allocated reserved memory to be used

   #  by PEI in S3 phase. The default size 32K. When changing the value of this PCD, the platform

   #  developer should make sure the memory size is large enough to meet PEI requiremnt in S3 phase.