summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorklu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524>2007-07-10 08:57:25 +0000
committerklu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524>2007-07-10 08:57:25 +0000
commitcba9012a92bf97754d09acafb572fb9990f1b636 (patch)
tree41f18b78cbd92ee62c747fe0fbf4a9300578852e
parentbaad9ba2df01a09dfbcca3c9e3a5952371aaf2dc (diff)
downloadedk2-cba9012a92bf97754d09acafb572fb9990f1b636.tar.gz
edk2-cba9012a92bf97754d09acafb572fb9990f1b636.tar.bz2
edk2-cba9012a92bf97754d09acafb572fb9990f1b636.zip
Enable dynamic PCD for windowBusDriver
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3167 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r--MdeModulePkg/Library/PcdDriverPcdLibNull/PcdLib.c3
-rw-r--r--MdeModulePkg/Universal/PCD/Dxe/Pcd.inf3
-rw-r--r--Nt32Pkg/Nt32Pkg.dsc29
-rw-r--r--Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriver.c47
4 files changed, 28 insertions, 54 deletions
diff --git a/MdeModulePkg/Library/PcdDriverPcdLibNull/PcdLib.c b/MdeModulePkg/Library/PcdDriverPcdLibNull/PcdLib.c
index f3e8b513b4..b7d4408123 100644
--- a/MdeModulePkg/Library/PcdDriverPcdLibNull/PcdLib.c
+++ b/MdeModulePkg/Library/PcdDriverPcdLibNull/PcdLib.c
@@ -14,6 +14,9 @@
**/
#include <PiDxe.h>
+#include <Library/DebugLib.h>
+#include <Library/PcdLib.h>
+#include <Library/BaseMemoryLib.h>
/**
diff --git a/MdeModulePkg/Universal/PCD/Dxe/Pcd.inf b/MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
index f5502e5028..db828ac8d7 100644
--- a/MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
+++ b/MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
@@ -75,12 +75,11 @@
UefiBootServicesTableLib
MemoryAllocationLib
HobLib
- PcdLib
UefiDriverEntryPoint
UefiLib
DebugLib
BaseLib
-
+ PcdLib
################################################################################
#
diff --git a/Nt32Pkg/Nt32Pkg.dsc b/Nt32Pkg/Nt32Pkg.dsc
index 5443406cb8..53390ab5bf 100644
--- a/Nt32Pkg/Nt32Pkg.dsc
+++ b/Nt32Pkg/Nt32Pkg.dsc
@@ -106,22 +106,19 @@
UefiBootServicesTableLib|$(WORKSPACE)/MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
HobLib|$(WORKSPACE)/MdePkg/Library/DxeHobLib/DxeHobLib.inf
DevicePathLib|$(WORKSPACE)/MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
- # After tools enable the dynamic PCD, please uncomment follows library instances mapping.
- #PcdLib|$(WORKSPACE)/MdePkg/Library/DxePcdLib/DxePcdLib.inf
+ PcdLib|$(WORKSPACE)/MdePkg/Library/DxePcdLib/DxePcdLib.inf
MemoryAllocationLib|$(WORKSPACE)/MdePkg/Library/DxeMemoryAllocationLib/DxeMemoryAllocationLib.inf
UefiLib|$(WORKSPACE)/MdePkg/Library/UefiLib/UefiLib.inf
ReportStatusCodeLib|$(WORKSPACE)/IntelFrameworkPkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
UefiRuntimeServicesTableLib|$(WORKSPACE)/MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
WinNtLib|$(WORKSPACE)/Nt32Pkg/Library/DxeWinNtLib/DxeWinNtLib.inf
OemHookStatusCodeLib|$(WORKSPACE)/Nt32Pkg/Library/DxeNt32OemHookStatusCodeLib/DxeNt32OemHookStatusCodeLib.inf
- # After tools enable the dynamic PCD, please uncomment follows library instances mapping.
- #PcdLib|$(WORKSPACE)/MdePkg/Library/DxePcdLib/DxePcdLib.inf
+ PcdLib|$(WORKSPACE)/MdePkg/Library/DxePcdLib/DxePcdLib.inf
DebugLib|$(WORKSPACE)/MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
[LibraryClasses.common.PEIM]
HobLib|$(WORKSPACE)/MdePkg/Library/PeiHobLib/PeiHobLib.inf
- # After tools enable the dynamic PCD, please uncomment follows library instances mapping.
- #PcdLib|$(WORKSPACE)/MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
+ PcdLib|$(WORKSPACE)/MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
IoLib|$(WORKSPACE)/MdePkg/Library/PeiIoLibCpuIo/PeiIoLibCpuIo.inf
PeimEntryPoint|$(WORKSPACE)/MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
PeiServicesLib|$(WORKSPACE)/MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
@@ -143,15 +140,13 @@
OldPeiCoreEntryPoint|$(WORKSPACE)/MdePkg/Library/OldPeiCoreEntryPoint/OldPeiCoreEntryPoint.inf
ReportStatusCodeLib|$(WORKSPACE)/IntelFrameworkPkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
PeCoffGetEntryPointLib|$(WORKSPACE)/Nt32Pkg/Library/Nt32PeiPeCoffGetEntryPointLib/Nt32PeiPeCoffGetEntryPointLib.inf
- # After tools enable the dynamic PCD, please uncomment follows library instances mapping.
- #PcdLib|$(WORKSPACE)/MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
+ PcdLib|$(WORKSPACE)/MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
DebugLib|$(WORKSPACE)/IntelFrameworkPkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
[LibraryClasses.common.DXE_RUNTIME_DRIVER]
UefiRuntimeServicesTableLib|$(WORKSPACE)/MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
HobLib|$(WORKSPACE)/MdePkg/Library/DxeHobLib/DxeHobLib.inf
- # After tools enable the dynamic PCD, please uncomment follows library instances mapping.
- #PcdLib|$(WORKSPACE)/MdePkg/Library/DxePcdLib/DxePcdLib.inf
+ PcdLib|$(WORKSPACE)/MdePkg/Library/DxePcdLib/DxePcdLib.inf
MemoryAllocationLib|$(WORKSPACE)/MdePkg/Library/DxeMemoryAllocationLib/DxeMemoryAllocationLib.inf
UefiLib|$(WORKSPACE)/MdePkg/Library/UefiLib/UefiLib.inf
UefiDriverEntryPoint|$(WORKSPACE)/MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
@@ -171,8 +166,7 @@
[LibraryClasses.common.UEFI_DRIVER]
UefiRuntimeServicesTableLib|$(WORKSPACE)/MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
HobLib|$(WORKSPACE)/MdePkg/Library/DxeHobLib/DxeHobLib.inf
- # After tools enable the dynamic PCD, please uncomment follows library instances mapping.
- #PcdLib|$(WORKSPACE)/MdePkg/Library/DxePcdLib/DxePcdLib.inf
+ PcdLib|$(WORKSPACE)/MdePkg/Library/DxePcdLib/DxePcdLib.inf
MemoryAllocationLib|$(WORKSPACE)/MdePkg/Library/DxeMemoryAllocationLib/DxeMemoryAllocationLib.inf
UefiLib|$(WORKSPACE)/MdePkg/Library/UefiLib/UefiLib.inf
UefiDriverEntryPoint|$(WORKSPACE)/MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
@@ -191,8 +185,7 @@
[LibraryClasses.common.DXE_DRIVER]
UefiRuntimeServicesTableLib|$(WORKSPACE)/MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
HobLib|$(WORKSPACE)/MdePkg/Library/DxeHobLib/DxeHobLib.inf
- # After tools enable the dynamic PCD, please uncomment follows library instances mapping.
- #PcdLib|$(WORKSPACE)/MdePkg/Library/DxePcdLib/DxePcdLib.inf
+ PcdLib|$(WORKSPACE)/MdePkg/Library/DxePcdLib/DxePcdLib.inf
MemoryAllocationLib|$(WORKSPACE)/MdePkg/Library/DxeMemoryAllocationLib/DxeMemoryAllocationLib.inf
UefiLib|$(WORKSPACE)/MdePkg/Library/UefiLib/UefiLib.inf
UefiDriverEntryPoint|$(WORKSPACE)/MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
@@ -219,8 +212,7 @@
HobLib|$(WORKSPACE)/MdePkg/Library/DxeHobLib/DxeHobLib.inf
DevicePathLib|$(WORKSPACE)/MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
EdkIfrSupportLib|$(WORKSPACE)/MdeModulePkg/Library/EdkIfrSupportLib/EdkIfrSupportLib.inf
- # After tools enable the dynamic PCD, please uncomment follows library instances mapping.
- #PcdLib|$(WORKSPACE)/MdePkg/Library/DxePcdLib/DxePcdLib.inf
+ PcdLib|$(WORKSPACE)/MdePkg/Library/DxePcdLib/DxePcdLib.inf
MemoryAllocationLib|$(WORKSPACE)/MdePkg/Library/DxeMemoryAllocationLib/DxeMemoryAllocationLib.inf
UefiLib|$(WORKSPACE)/MdePkg/Library/UefiLib/UefiLib.inf
ReportStatusCodeLib|$(WORKSPACE)/IntelFrameworkPkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
@@ -376,7 +368,10 @@
# DXE Phase modules
##
$(WORKSPACE)/MdeModulePkg/Core/Dxe/DxeMain.inf
- $(WORKSPACE)/MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
+ $(WORKSPACE)/MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
+ <LibraryClass>
+ PcdLib|$(WORKSPACE)/MdeModulePkg/Library/PcdDriverPcdLibNull/PcdLib.inf
+ }
$(WORKSPACE)/Nt32Pkg/MetronomeDxe/Metronome.inf
$(WORKSPACE)/Nt32Pkg/RealTimeClockRuntimeDxe/RealTimeClock.inf
$(WORKSPACE)/Nt32Pkg/ResetRuntimeDxe/Reset.inf
diff --git a/Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriver.c b/Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriver.c
index a0baa751e6..999fb0cc5d 100644
--- a/Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriver.c
+++ b/Nt32Pkg/WinNtBusDriverDxe/WinNtBusDriver.c
@@ -138,44 +138,22 @@ EFI_DRIVER_BINDING_PROTOCOL gWinNtBusDriverBinding = {
NULL
};
-#define NT_PCD_ARRAY_SIZE (sizeof(mPcdEnvironment)/sizeof(NT_ENVIRONMENT_VARIABLE_ENTRY))
-
-//
-// BUGBUG: Because currently the new build tools does not support dynamic PCD
-// following dynamic PCd will be hard code. After tools ready, we should
-// use dynmanic PCD AQAP.
-//
+#define NT_PCD_ARRAY_SIZE (sizeof(mPcdEnvironment)/sizeof(NT_PCD_ENTRY))
//
// Table to map NT Environment variable to the GUID that should be in
// device path.
//
-//static NT_PCD_ENTRY mPcdEnvironment[] = {
-// PcdToken(PcdWinNtConsole), &gEfiWinNtConsoleGuid,
-// PcdToken(PcdWinNtGop), &gEfiWinNtGopGuid,
-// PcdToken(PcdWinNtSerialPort), &gEfiWinNtSerialPortGuid,
-// PcdToken(PcdWinNtFileSystem), &gEfiWinNtFileSystemGuid,
-// PcdToken(PcdWinNtVirtualDisk), &gEfiWinNtVirtualDisksGuid,
-// PcdToken(PcdWinNtPhysicalDisk), &gEfiWinNtPhysicalDisksGuid,
-// PcdToken(PcdWinNtCpuModel), &gEfiWinNtCPUModelGuid,
-// PcdToken(PcdWinNtCpuSpeed), &gEfiWinNtCPUSpeedGuid,
-// PcdToken(PcdWinNtMemorySize), &gEfiWinNtMemoryGuid
-//};
-typedef struct {
- CHAR16 *Variable;
- EFI_GUID *DevicePathGuid;
-} NT_ENVIRONMENT_VARIABLE_ENTRY;
-
-static NT_ENVIRONMENT_VARIABLE_ENTRY mPcdEnvironment[] = {
- L"Bus Driver Console Window", &gEfiWinNtConsoleGuid,
- L"UGA Window 1!UGA Window 2", &gEfiWinNtGopGuid,
- L"COM1!COM2", &gEfiWinNtSerialPortGuid,
- L".!..\\..\\..\\..\\EdkShellBinPkg\\bin\\ia32\\Apps", &gEfiWinNtFileSystemGuid,
- L"FW;40960;512", &gEfiWinNtVirtualDisksGuid,
- L"E:RW;245760;512", &gEfiWinNtPhysicalDisksGuid,
- L"Intel(R) Processor Model", &gEfiWinNtCPUModelGuid,
- L"3000", &gEfiWinNtCPUSpeedGuid,
- L"64!64", &gEfiWinNtMemoryGuid
+static NT_PCD_ENTRY mPcdEnvironment[] = {
+ PcdToken(PcdWinNtConsole), &gEfiWinNtConsoleGuid,
+ PcdToken(PcdWinNtGop), &gEfiWinNtGopGuid,
+ PcdToken(PcdWinNtSerialPort), &gEfiWinNtSerialPortGuid,
+ PcdToken(PcdWinNtFileSystem), &gEfiWinNtFileSystemGuid,
+ PcdToken(PcdWinNtVirtualDisk), &gEfiWinNtVirtualDisksGuid,
+ PcdToken(PcdWinNtPhysicalDisk), &gEfiWinNtPhysicalDisksGuid,
+ PcdToken(PcdWinNtCpuModel), &gEfiWinNtCPUModelGuid,
+ PcdToken(PcdWinNtCpuSpeed), &gEfiWinNtCPUSpeedGuid,
+ PcdToken(PcdWinNtMemorySize), &gEfiWinNtMemoryGuid
};
/**
@@ -452,8 +430,7 @@ Returns:
//
InstallStatus = EFI_NOT_FOUND;
for (Index = 0; Index < NT_PCD_ARRAY_SIZE; Index++) {
- //PcdTempStr = (VOID *)LibPcdGetPtr (mPcdEnvironment[Index].Token);
- PcdTempStr = mPcdEnvironment[Index].Variable;
+ PcdTempStr = (VOID *)LibPcdGetPtr (mPcdEnvironment[Index].Token);
ASSERT (PcdTempStr != NULL);
TempStrSize = StrLen (PcdTempStr);