1) Change Framework version of PeiServiceTable's PciCfg from PEI_PCI_CFG_PPI to ECP_PEI_PCI_CFG_PPI. This help to detect if user is calling PeiServiceTable->PciCfg->Modify in a PI platform. Modify between Framework spec and PI spec is not compatible.

2) Add ECP_PEI_PCI_CFG_PPI to EdkFrameworkPpiLib
3) Add PeiLibPciCfgModify which call PciCfg2. This function will used by modified Framework Module which will be working with a PI platform.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5260 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
qwang12
2008-05-21 07:21:30 +00:00
parent bf6d2af434
commit 1e55f6a46b
6 changed files with 250 additions and 0 deletions

View File

@ -43,6 +43,7 @@ EFI_FORWARD_DECLARATION (EFI_PEI_SERVICES);
#include EFI_PPI_DEFINITION (CpuIo)
#include EFI_PPI_DEFINITION (PciCfg)
#include EFI_PPI_DEFINITION (PciCfg2)
#include EFI_PPI_DEFINITION (EcpPciCfg)
//
// PEI Specification Revision information
@ -546,7 +547,11 @@ struct _EFI_PEI_SERVICES {
#if (PI_SPECIFICATION_VERSION < 0x00010000)
PEI_CPU_IO_PPI *CpuIo;
#if defined (SUPPORT_DEPRECATED_PCI_CFG_PPI)
PEI_PCI_CFG_PPI *PciCfg;
#else
ECP_PEI_PCI_CFG_PPI *PciCfg;
#endif
#else
EFI_PEI_CPU_IO_PPI *CpuIo;
EFI_PEI_PCI_CFG2_PPI *PciCfg;