mirror of https://github.com/acidanthera/audk.git
This check-in add Pci23.h, Pci30.h, EfiPci.h and take those originally put in Pci22.h to their proper position in the new files.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1907 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
7228815241
commit
b51f14f4d6
|
@ -0,0 +1,58 @@
|
|||
/** @file
|
||||
Support for EFI PCI specification.
|
||||
|
||||
Copyright (c) 2006, Intel Corporation
|
||||
All rights reserved. This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
Module Name: EfiPci.h
|
||||
|
||||
**/
|
||||
|
||||
#ifndef _EFI_PCI_H_
|
||||
#define _EFI_PCI_H_
|
||||
|
||||
//#include "pci22.h"
|
||||
//#include "pci23.h"
|
||||
//#include "pci30.h"
|
||||
|
||||
#pragma pack(push, 1)
|
||||
|
||||
typedef struct {
|
||||
UINT8 Register;
|
||||
UINT8 Function;
|
||||
UINT8 Device;
|
||||
UINT8 Bus;
|
||||
UINT8 Reserved[4];
|
||||
} DEFIO_PCI_ADDR;
|
||||
|
||||
#define EFI_ROOT_BRIDGE_LIST 'eprb'
|
||||
#define EFI_PCI_EXPANSION_ROM_HEADER_EFISIGNATURE 0x0EF1
|
||||
|
||||
typedef struct {
|
||||
UINT16 Signature; // 0xaa55
|
||||
UINT16 InitializationSize;
|
||||
UINT32 EfiSignature; // 0x0EF1
|
||||
UINT16 EfiSubsystem;
|
||||
UINT16 EfiMachineType;
|
||||
UINT16 CompressionType;
|
||||
UINT8 Reserved[8];
|
||||
UINT16 EfiImageHeaderOffset;
|
||||
UINT16 PcirOffset;
|
||||
} EFI_PCI_EXPANSION_ROM_HEADER;
|
||||
|
||||
typedef union {
|
||||
UINT8 *Raw;
|
||||
PCI_EXPANSION_ROM_HEADER *Generic;
|
||||
EFI_PCI_EXPANSION_ROM_HEADER *Efi;
|
||||
EFI_LEGACY_EXPANSION_ROM_HEADER *PcAt;
|
||||
} EFI_PCI_ROM_HEADER;
|
||||
|
||||
#pragma pack(pop)
|
||||
|
||||
#endif
|
|
@ -288,10 +288,6 @@ typedef struct {
|
|||
|
||||
#define PCI_MAX_BAR 0x0006
|
||||
#define PCI_MAX_CONFIG_OFFSET 0x0100
|
||||
//
|
||||
// bugbug: this is supported in PCI spec v2.3
|
||||
//
|
||||
#define PCI_EXP_MAX_CONFIG_OFFSET 0x1000
|
||||
|
||||
#define PCI_VENDOR_ID_OFFSET 0x00
|
||||
#define PCI_DEVICE_ID_OFFSET 0x02
|
||||
|
@ -323,14 +319,6 @@ typedef struct {
|
|||
#define PCI_BRIDGE_SECONDARY_BUS_REGISTER_OFFSET 0x19
|
||||
#define PCI_BRIDGE_SUBORDINATE_BUS_REGISTER_OFFSET 0x1a
|
||||
|
||||
typedef struct {
|
||||
UINT8 Register;
|
||||
UINT8 Function;
|
||||
UINT8 Device;
|
||||
UINT8 Bus;
|
||||
UINT8 Reserved[4];
|
||||
} DEFIO_PCI_ADDR;
|
||||
|
||||
typedef union {
|
||||
struct {
|
||||
UINT32 Reg : 8;
|
||||
|
@ -345,9 +333,7 @@ typedef union {
|
|||
|
||||
#pragma pack()
|
||||
|
||||
#define EFI_ROOT_BRIDGE_LIST 'eprb'
|
||||
#define PCI_EXPANSION_ROM_HEADER_SIGNATURE 0xaa55
|
||||
#define EFI_PCI_EXPANSION_ROM_HEADER_EFISIGNATURE 0x0EF1
|
||||
#define PCI_DATA_STRUCTURE_SIGNATURE EFI_SIGNATURE_32 ('P', 'C', 'I', 'R')
|
||||
#define PCI_CODE_TYPE_PCAT_IMAGE 0x00
|
||||
#define PCI_CODE_TYPE_EFI_IMAGE 0x03
|
||||
|
@ -403,18 +389,6 @@ typedef struct {
|
|||
UINT16 PcirOffset;
|
||||
} PCI_EXPANSION_ROM_HEADER;
|
||||
|
||||
typedef struct {
|
||||
UINT16 Signature; // 0xaa55
|
||||
UINT16 InitializationSize;
|
||||
UINT32 EfiSignature; // 0x0EF1
|
||||
UINT16 EfiSubsystem;
|
||||
UINT16 EfiMachineType;
|
||||
UINT16 CompressionType;
|
||||
UINT8 Reserved[8];
|
||||
UINT16 EfiImageHeaderOffset;
|
||||
UINT16 PcirOffset;
|
||||
} EFI_PCI_EXPANSION_ROM_HEADER;
|
||||
|
||||
typedef struct {
|
||||
UINT16 Signature; // 0xaa55
|
||||
UINT8 Size512;
|
||||
|
@ -423,13 +397,6 @@ typedef struct {
|
|||
UINT16 PcirOffset;
|
||||
} EFI_LEGACY_EXPANSION_ROM_HEADER;
|
||||
|
||||
typedef union {
|
||||
UINT8 *Raw;
|
||||
PCI_EXPANSION_ROM_HEADER *Generic;
|
||||
EFI_PCI_EXPANSION_ROM_HEADER *Efi;
|
||||
EFI_LEGACY_EXPANSION_ROM_HEADER *PcAt;
|
||||
} EFI_PCI_ROM_HEADER;
|
||||
|
||||
typedef struct {
|
||||
UINT32 Signature; // "PCIR"
|
||||
UINT16 VendorId;
|
||||
|
@ -445,23 +412,6 @@ typedef struct {
|
|||
UINT16 Reserved1;
|
||||
} PCI_DATA_STRUCTURE;
|
||||
|
||||
typedef struct {
|
||||
UINT32 Signature; // "PCIR"
|
||||
UINT16 VendorId;
|
||||
UINT16 DeviceId;
|
||||
UINT16 DeviceListOffset;
|
||||
UINT16 Length;
|
||||
UINT8 Revision;
|
||||
UINT8 ClassCode[3];
|
||||
UINT16 ImageLength;
|
||||
UINT16 CodeRevision;
|
||||
UINT8 CodeType;
|
||||
UINT8 Indicator;
|
||||
UINT16 MaxRuntimeImageLength;
|
||||
UINT16 ConfigUtilityCodeHeaderOffset;
|
||||
UINT16 DMTFCLPEntryPointOffset;
|
||||
} PCI_3_0_DATA_STRUCTURE;
|
||||
|
||||
//
|
||||
// PCI Capability List IDs and records
|
||||
//
|
||||
|
@ -472,10 +422,6 @@ typedef struct {
|
|||
#define EFI_PCI_CAPABILITY_ID_MSI 0x05
|
||||
#define EFI_PCI_CAPABILITY_ID_HOTPLUG 0x06
|
||||
#define EFI_PCI_CAPABILITY_ID_PCIX 0x07
|
||||
//
|
||||
// bugbug: this ID is defined in PCI spec v2.3
|
||||
//
|
||||
#define EFI_PCI_CAPABILITY_ID_PCIEXP 0x10
|
||||
|
||||
typedef struct {
|
||||
UINT8 CapabilityID;
|
||||
|
@ -586,4 +532,12 @@ typedef struct {
|
|||
|
||||
#pragma pack(pop)
|
||||
|
||||
//
|
||||
// NOTE: The following header files are included here for
|
||||
// compatibility consideration.
|
||||
//
|
||||
#include "pci23.h"
|
||||
#include "pci30.h"
|
||||
#include "EfiPci.h"
|
||||
|
||||
#endif
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
/** @file
|
||||
Support for PCI 2.3 standard.
|
||||
|
||||
Copyright (c) 2006, Intel Corporation
|
||||
All rights reserved. This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
Module Name: pci23.h
|
||||
|
||||
**/
|
||||
|
||||
#ifndef _PCI23_H
|
||||
#define _PCI23_H
|
||||
|
||||
//#include "pci22.h"
|
||||
|
||||
#define PCI_EXP_MAX_CONFIG_OFFSET 0x1000
|
||||
#define EFI_PCI_CAPABILITY_ID_PCIEXP 0x10
|
||||
|
||||
#endif
|
|
@ -0,0 +1,45 @@
|
|||
/** @file
|
||||
Support for PCI 3.0 standard.
|
||||
|
||||
Copyright (c) 2006, Intel Corporation
|
||||
All rights reserved. This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
Module Name: pci30.h
|
||||
|
||||
**/
|
||||
|
||||
#ifndef _PCI30_H
|
||||
#define _PCI30_H
|
||||
|
||||
//#include "pci23.h"
|
||||
|
||||
#define PCI_CLASS_MASS_STORAGE_SATADPA 0x06
|
||||
|
||||
#pragma pack(push, 1)
|
||||
|
||||
typedef struct {
|
||||
UINT32 Signature; // "PCIR"
|
||||
UINT16 VendorId;
|
||||
UINT16 DeviceId;
|
||||
UINT16 DeviceListOffset;
|
||||
UINT16 Length;
|
||||
UINT8 Revision;
|
||||
UINT8 ClassCode[3];
|
||||
UINT16 ImageLength;
|
||||
UINT16 CodeRevision;
|
||||
UINT8 CodeType;
|
||||
UINT8 Indicator;
|
||||
UINT16 MaxRuntimeImageLength;
|
||||
UINT16 ConfigUtilityCodeHeaderOffset;
|
||||
UINT16 DMTFCLPEntryPointOffset;
|
||||
} PCI_3_0_DATA_STRUCTURE;
|
||||
|
||||
#pragma pack(pop)
|
||||
|
||||
#endif
|
|
@ -0,0 +1,58 @@
|
|||
/** @file
|
||||
Support for EFI PCI specification.
|
||||
|
||||
Copyright (c) 2006, Intel Corporation
|
||||
All rights reserved. This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
Module Name: EfiPci.h
|
||||
|
||||
**/
|
||||
|
||||
#ifndef _EFI_PCI_H_
|
||||
#define _EFI_PCI_H_
|
||||
|
||||
//#include "pci22.h"
|
||||
//#include "pci23.h"
|
||||
//#include "pci30.h"
|
||||
|
||||
#pragma pack(push, 1)
|
||||
|
||||
typedef struct {
|
||||
UINT8 Register;
|
||||
UINT8 Function;
|
||||
UINT8 Device;
|
||||
UINT8 Bus;
|
||||
UINT8 Reserved[4];
|
||||
} DEFIO_PCI_ADDR;
|
||||
|
||||
#define EFI_ROOT_BRIDGE_LIST 'eprb'
|
||||
#define EFI_PCI_EXPANSION_ROM_HEADER_EFISIGNATURE 0x0EF1
|
||||
|
||||
typedef struct {
|
||||
UINT16 Signature; // 0xaa55
|
||||
UINT16 InitializationSize;
|
||||
UINT32 EfiSignature; // 0x0EF1
|
||||
UINT16 EfiSubsystem;
|
||||
UINT16 EfiMachineType;
|
||||
UINT16 CompressionType;
|
||||
UINT8 Reserved[8];
|
||||
UINT16 EfiImageHeaderOffset;
|
||||
UINT16 PcirOffset;
|
||||
} EFI_PCI_EXPANSION_ROM_HEADER;
|
||||
|
||||
typedef union {
|
||||
UINT8 *Raw;
|
||||
PCI_EXPANSION_ROM_HEADER *Generic;
|
||||
EFI_PCI_EXPANSION_ROM_HEADER *Efi;
|
||||
EFI_LEGACY_EXPANSION_ROM_HEADER *PcAt;
|
||||
} EFI_PCI_ROM_HEADER;
|
||||
|
||||
#pragma pack(pop)
|
||||
|
||||
#endif
|
|
@ -288,10 +288,6 @@ typedef struct {
|
|||
|
||||
#define PCI_MAX_BAR 0x0006
|
||||
#define PCI_MAX_CONFIG_OFFSET 0x0100
|
||||
//
|
||||
// bugbug: this is supported in PCI spec v2.3
|
||||
//
|
||||
#define PCI_EXP_MAX_CONFIG_OFFSET 0x1000
|
||||
|
||||
#define PCI_VENDOR_ID_OFFSET 0x00
|
||||
#define PCI_DEVICE_ID_OFFSET 0x02
|
||||
|
@ -323,14 +319,6 @@ typedef struct {
|
|||
#define PCI_BRIDGE_SECONDARY_BUS_REGISTER_OFFSET 0x19
|
||||
#define PCI_BRIDGE_SUBORDINATE_BUS_REGISTER_OFFSET 0x1a
|
||||
|
||||
typedef struct {
|
||||
UINT8 Register;
|
||||
UINT8 Function;
|
||||
UINT8 Device;
|
||||
UINT8 Bus;
|
||||
UINT8 Reserved[4];
|
||||
} DEFIO_PCI_ADDR;
|
||||
|
||||
typedef union {
|
||||
struct {
|
||||
UINT32 Reg : 8;
|
||||
|
@ -345,9 +333,7 @@ typedef union {
|
|||
|
||||
#pragma pack()
|
||||
|
||||
#define EFI_ROOT_BRIDGE_LIST 'eprb'
|
||||
#define PCI_EXPANSION_ROM_HEADER_SIGNATURE 0xaa55
|
||||
#define EFI_PCI_EXPANSION_ROM_HEADER_EFISIGNATURE 0x0EF1
|
||||
#define PCI_DATA_STRUCTURE_SIGNATURE EFI_SIGNATURE_32 ('P', 'C', 'I', 'R')
|
||||
#define PCI_CODE_TYPE_PCAT_IMAGE 0x00
|
||||
#define PCI_CODE_TYPE_EFI_IMAGE 0x03
|
||||
|
@ -403,33 +389,14 @@ typedef struct {
|
|||
UINT16 PcirOffset;
|
||||
} PCI_EXPANSION_ROM_HEADER;
|
||||
|
||||
typedef struct {
|
||||
UINT16 Signature; // 0xaa55
|
||||
UINT16 InitializationSize;
|
||||
UINT32 EfiSignature; // 0x0EF1
|
||||
UINT16 EfiSubsystem;
|
||||
UINT16 EfiMachineType;
|
||||
UINT16 CompressionType;
|
||||
UINT8 Reserved[8];
|
||||
UINT16 EfiImageHeaderOffset;
|
||||
UINT16 PcirOffset;
|
||||
} EFI_PCI_EXPANSION_ROM_HEADER;
|
||||
|
||||
typedef struct {
|
||||
UINT16 Signature; // 0xaa55
|
||||
UINT8 Size512;
|
||||
UINT8 InitEntryPoint[3];
|
||||
UINT8 Reserved[0x12];
|
||||
UINT8 Reserved[0x12];
|
||||
UINT16 PcirOffset;
|
||||
} EFI_LEGACY_EXPANSION_ROM_HEADER;
|
||||
|
||||
typedef union {
|
||||
UINT8 *Raw;
|
||||
PCI_EXPANSION_ROM_HEADER *Generic;
|
||||
EFI_PCI_EXPANSION_ROM_HEADER *Efi;
|
||||
EFI_LEGACY_EXPANSION_ROM_HEADER *PcAt;
|
||||
} EFI_PCI_ROM_HEADER;
|
||||
|
||||
typedef struct {
|
||||
UINT32 Signature; // "PCIR"
|
||||
UINT16 VendorId;
|
||||
|
@ -455,10 +422,6 @@ typedef struct {
|
|||
#define EFI_PCI_CAPABILITY_ID_MSI 0x05
|
||||
#define EFI_PCI_CAPABILITY_ID_HOTPLUG 0x06
|
||||
#define EFI_PCI_CAPABILITY_ID_PCIX 0x07
|
||||
//
|
||||
// bugbug: this ID is defined in PCI spec v2.3
|
||||
//
|
||||
#define EFI_PCI_CAPABILITY_ID_PCIEXP 0x10
|
||||
|
||||
typedef struct {
|
||||
UINT8 CapabilityID;
|
||||
|
@ -569,4 +532,12 @@ typedef struct {
|
|||
|
||||
#pragma pack(pop)
|
||||
|
||||
//
|
||||
// NOTE: The following header files are included here for
|
||||
// compatibility consideration.
|
||||
//
|
||||
#include "pci23.h"
|
||||
#include "pci30.h"
|
||||
#include "EfiPci.h"
|
||||
|
||||
#endif
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
/** @file
|
||||
Support for PCI 2.3 standard.
|
||||
|
||||
Copyright (c) 2006, Intel Corporation
|
||||
All rights reserved. This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
Module Name: pci23.h
|
||||
|
||||
**/
|
||||
|
||||
#ifndef _PCI23_H
|
||||
#define _PCI23_H
|
||||
|
||||
//#include "pci22.h"
|
||||
|
||||
#define PCI_EXP_MAX_CONFIG_OFFSET 0x1000
|
||||
#define EFI_PCI_CAPABILITY_ID_PCIEXP 0x10
|
||||
|
||||
#endif
|
|
@ -0,0 +1,45 @@
|
|||
/** @file
|
||||
Support for PCI 3.0 standard.
|
||||
|
||||
Copyright (c) 2006, Intel Corporation
|
||||
All rights reserved. This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
Module Name: pci30.h
|
||||
|
||||
**/
|
||||
|
||||
#ifndef _PCI30_H
|
||||
#define _PCI30_H
|
||||
|
||||
//#include "pci23.h"
|
||||
|
||||
#define PCI_CLASS_MASS_STORAGE_SATADPA 0x06
|
||||
|
||||
#pragma pack(push, 1)
|
||||
|
||||
typedef struct {
|
||||
UINT32 Signature; // "PCIR"
|
||||
UINT16 VendorId;
|
||||
UINT16 DeviceId;
|
||||
UINT16 DeviceListOffset;
|
||||
UINT16 Length;
|
||||
UINT8 Revision;
|
||||
UINT8 ClassCode[3];
|
||||
UINT16 ImageLength;
|
||||
UINT16 CodeRevision;
|
||||
UINT8 CodeType;
|
||||
UINT8 Indicator;
|
||||
UINT16 MaxRuntimeImageLength;
|
||||
UINT16 ConfigUtilityCodeHeaderOffset;
|
||||
UINT16 DMTFCLPEntryPointOffset;
|
||||
} PCI_3_0_DATA_STRUCTURE;
|
||||
|
||||
#pragma pack(pop)
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue