> On Nov 23, 2015, at 2:03 PM, Narinder Dhillon <ndhillo...@gmail.com> wrote: > > Hi Andrew, > > I looked at the ArmVirtPkg and did the same before I sent the previous > email. I am missing some step that is causing the null package to be > picked up. Here are my changes, I think I covered most but still > missing something.
The last [LibraryClasses] statement that best matches you module type should win. You could double check you don't have more than one entry. The < LibraryClasses > overrides on a per driver basis. You can add a flag to the build command to look at a log of the build. So add -y build.log (or --report-file=build.log). It will show what library instances got picked for the driver and what PCD values that the driver is using. Thanks, Andrew Fish > Thanks for your help, > > ---------------------------------------------------------------------------------------------- > in *.dsc.inc file: > > # > # Support dynamic PCD > # > PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf > > [LibraryClasses.common.SEC] > PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf > > [LibraryClasses.common.PEI_CORE] > PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf > > [LibraryClasses.common.PEIM] > PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf > > ------------------------------------------------------------------------------------------------------ > in *.dsc > > ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf { > <LibraryClasses> > > ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf > } > MdeModulePkg/Core/Pei/PeiMain.inf > MdeModulePkg/Universal/PCD/Pei/Pcd.inf > > > MdeModulePkg/Core/Dxe/DxeMain.inf { > <LibraryClasses> > > NULL|MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf > } > MdeModulePkg/Universal/PCD/Dxe/Pcd.inf > > ------------------------------------------------------------------------------------------------------------ > in *.fdf > > APRIORI PEI { > INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf > } > > !if $(EDK2_SKIP_PEICORE) == 1 > INF ArmPlatformPkg/PrePi/PeiMPCore.inf > !else > INF ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf > INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf > > > APRIORI DXE { > INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf > } > > INF MdeModulePkg/Core/Dxe/DxeMain.inf > INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf > > > > On Fri, Nov 20, 2015 at 5:27 PM, Andrew Fish <af...@apple.com> wrote: >> >>> On Nov 20, 2015, at 4:52 PM, Narinder Dhillon <ndhillo...@gmail.com> wrote: >>> >>> Hi All, >>> >>> Is it possible to set a dynamic PCD variable in PEI phase and get it >>> in DXE phase ? >>> >> >> Yes. >> >>> I am having trouble setting it. Log below. >>> >>> Thanx, >>> >>> add-symbol-file >>> /projects/cps-sw-ext1/ndhillon/uefi_cleanup/firmware/uefi/Build/DEBUG_GCC49/AARCH64/ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore/DEBUG/ArmPlatformPrePeiCore.dll >>> 0xC0001800 >>> add-symbol-file >>> /projects/cps-sw-ext1/ndhillon/uefi_cleanup/firmware/uefi/Build/DEBUG_GCC49/AARCH64/MdeModulePkg/Core/Pei/PeiMain/DEBUG/PeiCore.dll >>> 0xC0016A90 >>> Platform: Nodes:0 Cores:176 Threads:1 >>> ASSERT >>> /projects/cps-sw-ext1/ndhillon/uefi_cleanup/firmware/uefi/MdePkg/Library/BasePcdLibNull/PcdLib.c(470): >>> ((BOOLEAN)(0==1)) >> >> You are using the wrong PcdLib instance. >> >> The BasePcdLibNull instance will ASSERT on any calls. >> >> You want to use the instances of the library that call the PPI/Protocol. >> >> https://github.com/tianocore/edk2/tree/master/MdePkg/Library/PeiPcdLib >> https://github.com/tianocore/edk2/tree/master/MdePkg/Library/DxePcdLib >> >> Thanks, >> >> Andrew Fish >> >>> _______________________________________________ >>> edk2-devel mailing list >>> edk2-devel@lists.01.org >>> https://lists.01.org/mailman/listinfo/edk2-devel >> > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel