I managed to add (and write to) a dynamic PCD from OVMF PEI:

OvmfPkg/OvmfPkg.dec:
 [PcdsDynamic, PcdsDynamicEx]
   gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId|0|UINT16|0x1b


OvmfPkg/OvmfPkgX64.dsc:
 [PcdsDynamicDefault]
   gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId|0


OvmfPkg/PlatformPei/PlatformPei.inf
 [Pcd]
   gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId


OvmfPkg/PlatformPei/Platform.c

  UINT16 HostBridgeDevId;
  ...
  PcdSet16 (PcdOvmfHostBridgePciDevId, HostBridgeDevId);



After doing this, things build just fine. But after further adding:


OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf:
 [Pcd]
   gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId


OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.c:
  ...
  HostBridgeDevId = PcdGet16 (PcdOvmfHostBridgePciDevId);
  ...


I now get this error:

/home/somlo/KVM-OSX/SCRATCH/edk2/OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.c:
In function `AcpiTimerLibConstructor':
/home/somlo/KVM-OSX/SCRATCH/edk2/MdePkg/Include/Library/PcdLib.h:377:45:
error: `_PCD_GET_MODE_16_PcdOvmfHostBridgePciDevId' undeclared (first
use in this function)
 #define PcdGet16(TokenName)
_PCD_GET_MODE_16_##TokenName
                                             ^
/home/somlo/KVM-OSX/SCRATCH/edk2/OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.c:61:21:
note: in expansion of macro `PcdGet16'
   HostBridgeDevId = PcdGet16 (PcdOvmfHostBridgePciDevId);
                     ^
/home/somlo/KVM-OSX/SCRATCH/edk2/MdePkg/Include/Library/PcdLib.h:377:45:
note: each undeclared identifier is reported only once for each
function it appears in
 #define PcdGet16(TokenName)
_PCD_GET_MODE_16_##TokenName
                                             ^
/home/somlo/KVM-OSX/SCRATCH/edk2/OvmfPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.c:61:21:
note: in expansion of macro `PcdGet16'
   HostBridgeDevId = PcdGet16 (PcdOvmfHostBridgePciDevId);
                     ^
make: ***
[/home/somlo/KVM-OSX/SCRATCH/edk2/Build/OvmfX64/DEBUG_GCC48/X64/OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib/OUTPUT/DxeAcpiTimerLib.obj]
Error 1


build.py...
 : error 7000: Failed to execute command
        make tbuild
[/home/somlo/KVM-OSX/SCRATCH/edk2/Build/OvmfX64/DEBUG_GCC48/X64/OvmfPkg/Library/AcpiTimerLib/BaseAcpiTimerLib]




Any idea what I might be missing ?

Thanks,
--Gabriel

------------------------------------------------------------------------------
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to