Enable dynamic PCD for windowBusDriver
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3167 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -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);
|
||||
|
Reference in New Issue
Block a user