Add Feature Flag PcdDxePcdDatabaseTraverseEnabled and PcdPeiPcdDatabaseTraverseEnabled

Add Pcd DXE driver and PEIM to all supported ARCH in EdkModulePkg-All-Archs.fpd

Make Pcd DXE driver and PEIM compilable under EBC, IPF, X64

Fixed a few other bugs.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@838 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
qwang12
2006-07-08 14:37:30 +00:00
parent 3c367f9de6
commit 4f914125e8
10 changed files with 5111 additions and 4340 deletions

View File

@@ -182,7 +182,10 @@ PeiPcdGetSize (
//
TokenNumber--;
ASSERT (TokenNumber < PEI_LOCAL_TOKEN_NUMBER);
// EBC compiler is very choosy. It may report warning about comparison
// between UINTN and 0 . So we add 1 in each size of the
// comparison.
ASSERT (TokenNumber + 1 < PEI_LOCAL_TOKEN_NUMBER + 1);
Size = (PeiPcdDb->Init.LocalTokenNumberTable[TokenNumber] & PCD_DATUM_TYPE_ALL_SET) >> PCD_DATUM_TYPE_SHIFT;
@@ -479,6 +482,10 @@ PeiPcdGetNextToken (
UINTN i;
BOOLEAN Found;
if (!FeaturePcdGet (PcdPeiPcdDatabaseTraverseEnabled)) {
return EFI_UNSUPPORTED;
}
if (Guid == NULL) {
if (*TokenNumber > PEI_NEX_TOKEN_NUMBER) {
return EFI_NOT_FOUND;
@@ -570,6 +577,10 @@ PeiPcdGetNextTokenSpace (
UINTN i;
BOOLEAN Found;
if (!FeaturePcdGet (PcdPeiPcdDatabaseTraverseEnabled)) {
return EFI_UNSUPPORTED;
}
ASSERT (Guid != NULL);
if (PEI_EXMAP_TABLE_EMPTY) {