diff options
Diffstat (limited to 'roms/edk2/ShellPkg/Library/UefiShellDebug1CommandsLib/Pci.h')
-rw-r--r-- | roms/edk2/ShellPkg/Library/UefiShellDebug1CommandsLib/Pci.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/roms/edk2/ShellPkg/Library/UefiShellDebug1CommandsLib/Pci.h b/roms/edk2/ShellPkg/Library/UefiShellDebug1CommandsLib/Pci.h new file mode 100644 index 000000000..6e423d521 --- /dev/null +++ b/roms/edk2/ShellPkg/Library/UefiShellDebug1CommandsLib/Pci.h @@ -0,0 +1,58 @@ +/** @file
+ Header file for Pci shell Debug1 function.
+
+ Copyright (c) 2013 Hewlett-Packard Development Company, L.P.
+ Copyright (c) 2005 - 2017, Intel Corporation. All rights reserved.<BR>
+ SPDX-License-Identifier: BSD-2-Clause-Patent
+
+**/
+
+#ifndef _EFI_SHELL_PCI_H_
+#define _EFI_SHELL_PCI_H_
+
+typedef enum {
+ PciDevice,
+ PciP2pBridge,
+ PciCardBusBridge,
+ PciUndefined
+} PCI_HEADER_TYPE;
+
+#define INDEX_OF(Field) ((UINT8 *) (Field) - (UINT8 *) mConfigSpace)
+
+#define IS_PCIE_ENDPOINT(DevicePortType) \
+ ((DevicePortType) == PCIE_DEVICE_PORT_TYPE_PCIE_ENDPOINT || \
+ (DevicePortType) == PCIE_DEVICE_PORT_TYPE_LEGACY_PCIE_ENDPOINT || \
+ (DevicePortType) == PCIE_DEVICE_PORT_TYPE_ROOT_COMPLEX_INTEGRATED_ENDPOINT)
+
+#define IS_PCIE_SWITCH(DevicePortType) \
+ ((DevicePortType == PCIE_DEVICE_PORT_TYPE_UPSTREAM_PORT) || \
+ (DevicePortType == PCIE_DEVICE_PORT_TYPE_DOWNSTREAM_PORT))
+
+#pragma pack(1)
+//
+// Data region after PCI configuration header(for cardbus bridge)
+//
+typedef struct {
+ UINT16 SubVendorId; // Subsystem Vendor ID
+ UINT16 SubSystemId; // Subsystem ID
+ UINT32 LegacyBase; // Optional 16-Bit PC Card Legacy
+ // Mode Base Address
+ //
+ UINT32 Data[46];
+} PCI_CARDBUS_DATA;
+
+typedef union {
+ PCI_DEVICE_HEADER_TYPE_REGION Device;
+ PCI_BRIDGE_CONTROL_REGISTER Bridge;
+ PCI_CARDBUS_CONTROL_REGISTER CardBus;
+} NON_COMMON_UNION;
+
+typedef struct {
+ PCI_DEVICE_INDEPENDENT_REGION Common;
+ NON_COMMON_UNION NonCommon;
+ UINT32 Data[48];
+} PCI_CONFIG_SPACE;
+
+#pragma pack()
+
+#endif // _PCI_H_
|