+\r
+//\r
+//\r
+//\r
+\r
+#define PCI_UNUSED 0x00\r
+#define PCI_USED 0xFF\r
+#define LEGACY_USED 0xFE\r
+\r
+#pragma pack(1)\r
+\r
+//\r
+//\r
+//\r
+typedef struct {\r
+ UINT8 Irq;\r
+ UINT8 Used;\r
+} EFI_LEGACY_IRQ_PRIORITY_TABLE_ENTRY;\r
+\r
+//\r
+// Define PIR table structures\r
+//\r
+#define EFI_LEGACY_PIRQ_TABLE_SIGNATURE SIGNATURE_32 ('$', 'P', 'I', 'R')\r
+\r
+typedef struct {\r
+ UINT32 Signature;\r
+ UINT8 MinorVersion;\r
+ UINT8 MajorVersion;\r
+ UINT16 TableSize;\r
+ UINT8 Bus;\r
+ UINT8 DevFun;\r
+ UINT16 PciOnlyIrq;\r
+ UINT16 CompatibleVid;\r
+ UINT16 CompatibleDid;\r
+ UINT32 Miniport;\r
+ UINT8 Reserved[11];\r
+ UINT8 Checksum;\r
+} EFI_LEGACY_PIRQ_TABLE_HEADER;\r
+\r
+\r
+typedef struct {\r
+ UINT8 Pirq;\r
+ UINT16 IrqMask;\r
+} EFI_LEGACY_PIRQ_ENTRY;\r
+\r
+typedef struct {\r
+ UINT8 Bus;\r
+ UINT8 Device;\r
+ EFI_LEGACY_PIRQ_ENTRY PirqEntry[4];\r
+ UINT8 Slot;\r
+ UINT8 Reserved;\r
+} EFI_LEGACY_IRQ_ROUTING_ENTRY;\r
+\r
+#pragma pack()\r
+\r
+\r