+///\r
+/// Instance of EFI_PEI_PCD_PPI which is defined in PI 1.2 Vol 3.\r
+/// This PPI instance only support dyanmicEx type PCD.\r
+///\r
+EFI_PEI_PCD_PPI mEfiPcdPpiInstance = {\r
+ PeiPcdSetSku,\r
+ \r
+ PeiPcdGet8Ex,\r
+ PeiPcdGet16Ex,\r
+ PeiPcdGet32Ex,\r
+ PeiPcdGet64Ex,\r
+ PeiPcdGetPtrEx,\r
+ PeiPcdGetBoolEx,\r
+ PeiPcdGetSizeEx,\r
+ PeiPcdSet8Ex,\r
+ PeiPcdSet16Ex,\r
+ PeiPcdSet32Ex,\r
+ PeiPcdSet64Ex,\r
+ PeiPcdSetPtrEx,\r
+ PeiPcdSetBoolEx,\r
+ (EFI_PEI_PCD_PPI_CALLBACK_ON_SET) PeiRegisterCallBackOnSet,\r
+ (EFI_PEI_PCD_PPI_CANCEL_CALLBACK) PcdUnRegisterCallBackOnSet,\r
+ PeiPcdGetNextToken,\r
+ PeiPcdGetNextTokenSpace\r
+};\r
+\r
+///\r
+/// Instance of GET_PCD_INFO_PPI protocol is EDKII native implementation.\r
+/// This protocol instance support dynamic and dynamicEx type PCDs.\r
+///\r
+GET_PCD_INFO_PPI mGetPcdInfoInstance = {\r
+ PeiGetPcdInfoGetInfo,\r
+ PeiGetPcdInfoGetInfoEx,\r
+ PeiGetPcdInfoGetSku\r
+};\r
+\r
+///\r
+/// Instance of EFI_GET_PCD_INFO_PPI which is defined in PI 1.2.1 Vol 3.\r
+/// This PPI instance only support dyanmicEx type PCD.\r
+///\r
+EFI_GET_PCD_INFO_PPI mEfiGetPcdInfoInstance = {\r
+ PeiGetPcdInfoGetInfoEx,\r
+ PeiGetPcdInfoGetSku\r
+};\r
+\r
+EFI_PEI_PPI_DESCRIPTOR mPpiList[] = {\r
+ {\r
+ EFI_PEI_PPI_DESCRIPTOR_PPI,\r
+ &gPcdPpiGuid,\r
+ &mPcdPpiInstance\r
+ },\r
+ {\r
+ (EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST),\r
+ &gEfiPeiPcdPpiGuid,\r
+ &mEfiPcdPpiInstance\r
+ }\r
+};\r
+\r
+EFI_PEI_PPI_DESCRIPTOR mPpiList2[] = {\r
+ {\r
+ EFI_PEI_PPI_DESCRIPTOR_PPI,\r
+ &gGetPcdInfoPpiGuid,\r
+ &mGetPcdInfoInstance\r
+ },\r
+ {\r
+ (EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST),\r
+ &gEfiGetPcdInfoPpiGuid,\r
+ &mEfiGetPcdInfoInstance\r
+ }\r