]> git.proxmox.com Git - mirror_edk2.git/blame - EdkCompatibilityPkg/Compatibility/Include/Ppi/EcpPciCfg.h
Grammatical and disclaimer changes (does not follow internal C coding stds.)
[mirror_edk2.git] / EdkCompatibilityPkg / Compatibility / Include / Ppi / EcpPciCfg.h
CommitLineData
cc5c33d7 1/** @file\r
63436673 2This PPI is the same as the PPI in the framework PciCfg, with one exception. \r
3Specifically, this PPI does not include a modify API, while the PPI in the framework PciCfg does. \r
4\r
5Copyright (c) 2008 - 2010, Intel Corporation. All rights reserved<BR>\r
6Portions copyright (c) 2008-2009 Apple Inc. All rights reserved.<BR>\r
7All rights reserved. This program and the accompanying materials\r
8are licensed and made available under the terms and conditions of the BSD License\r
9which accompanies this distribution. The full text of the license may be found at\r
10http://opensource.org/licenses/bsd-license.php.\r
11\r
12THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
cc5c33d7 13WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
14\r
15**/\r
16\r
17#ifndef _PEI_PCI_CFG_H_\r
18#define _PEI_PCI_CFG_H_\r
19\r
766dca7f 20#include <Ppi/PciCfg.h>\r
cc5c33d7 21\r
22#define ECP_PEI_PCI_CFG_PPI_GUID \\r
766dca7f 23 {0xb0ee53d4, 0xa049, 0x4a79, { 0xb2, 0xff, 0x19, 0xd9, 0xfa, 0xef, 0xaa, 0x94}}\r
cc5c33d7 24\r
25typedef struct _ECP_PEI_PCI_CFG_PPI ECP_PEI_PCI_CFG_PPI;\r
26\r
a45d1619 27/**\r
63436673 28 A PCI read and write operation.\r
a45d1619 29 \r
63436673 30 Writes to, or reads from, a given location in the PCI configuration space.\r
cc5c33d7 31\r
63436673 32 @param PeiServices An indirect pointer to the PEI Services Table \r
33 published by the PEI Foundation.\r
34 @param This The pointer to local data for the interface.\r
ac0f89ba
LG
35 @param Width The width of the access. Enumerated in bytes.\r
36 @param Address The physical address of the access. The format of\r
37 the address is described by EFI_PEI_PCI_CFG_PPI_PCI_ADDRESS.\r
38 @param Buffer A pointer to the buffer of data.\r
39 @retval EFI_SUCCESS The function completed successfully.\r
40 @retval EFI_DEVICE_ERROR There was a problem with the transaction.\r
63436673 41 @retval EFI_DEVICE_NOT_READY The device is not capable of supporting the \r
42 operation at this time.\r
a45d1619 43**/\r
cc5c33d7 44typedef\r
45EFI_STATUS\r
545312ad 46(EFIAPI *ECP_PEI_PCI_CFG_PPI_IO)(\r
cc5c33d7 47 IN EFI_PEI_SERVICES **PeiServices,\r
766dca7f 48 IN EFI_PEI_PCI_CFG_PPI * This,\r
cc5c33d7 49 IN EFI_PEI_PCI_CFG_PPI_WIDTH Width,\r
50 IN UINT64 Address,\r
51 IN OUT VOID *Buffer\r
52 );\r
53\r
54struct _ECP_PEI_PCI_CFG_PPI {\r
55 ECP_PEI_PCI_CFG_PPI_IO Read;\r
56 ECP_PEI_PCI_CFG_PPI_IO Write;\r
57};\r
58\r
59extern EFI_GUID gEcpPeiPciCfgPpiGuid;\r
60\r
61#endif\r