2 This PPI is the same as the PPI in the framework PciCfg, with one exception.
3 Specifically, this PPI does not include a modify API, while the PPI in the framework PciCfg does.
5 Copyright (c) 2008 - 2010, Intel Corporation. All rights reserved<BR>
6 Portions copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR>
7 All rights reserved. This program and the accompanying materials
8 are licensed and made available under the terms and conditions of the BSD License
9 which accompanies this distribution. The full text of the license may be found at
10 http://opensource.org/licenses/bsd-license.php.
12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
17 #ifndef _PEI_PCI_CFG_H_
18 #define _PEI_PCI_CFG_H_
20 #include <Ppi/PciCfg.h>
22 #define ECP_PEI_PCI_CFG_PPI_GUID \
23 {0xb0ee53d4, 0xa049, 0x4a79, { 0xb2, 0xff, 0x19, 0xd9, 0xfa, 0xef, 0xaa, 0x94}}
25 typedef struct _ECP_PEI_PCI_CFG_PPI ECP_PEI_PCI_CFG_PPI
;
28 A PCI read and write operation.
30 Writes to, or reads from, a given location in the PCI configuration space.
32 @param PeiServices An indirect pointer to the PEI Services Table
33 published by the PEI Foundation.
34 @param This The pointer to local data for the interface.
35 @param Width The width of the access. Enumerated in bytes.
36 @param Address The physical address of the access. The format of
37 the address is described by EFI_PEI_PCI_CFG_PPI_PCI_ADDRESS.
38 @param Buffer A pointer to the buffer of data.
39 @retval EFI_SUCCESS The function completed successfully.
40 @retval EFI_DEVICE_ERROR There was a problem with the transaction.
41 @retval EFI_DEVICE_NOT_READY The device is not capable of supporting the
42 operation at this time.
46 (EFIAPI
*ECP_PEI_PCI_CFG_PPI_IO
)(
47 IN EFI_PEI_SERVICES
**PeiServices
,
48 IN EFI_PEI_PCI_CFG_PPI
* This
,
49 IN EFI_PEI_PCI_CFG_PPI_WIDTH Width
,
54 struct _ECP_PEI_PCI_CFG_PPI
{
55 ECP_PEI_PCI_CFG_PPI_IO Read
;
56 ECP_PEI_PCI_CFG_PPI_IO Write
;
59 extern EFI_GUID gEcpPeiPciCfgPpiGuid
;