/*++ Copyright (c) 1995 Digital Equipment Corporation Module Name: xioref.h Abstract: This file defines the structures and definitions of the XIO interrupt architecture. Author: Dave Richards 12-May-1995 Environment: Kernel mode Revision History: --*/ #ifndef _XIOREFH_ #define _XIOREFH_ #ifndef _LANGUAGE_ASSEMBLY #ifdef XIO_PASS1 typedef struct _XIO_INTERRUPT_CSRS{ UCHAR InterruptAcknowledge; // IO Address 0x0532 UCHAR Filler0; // UCHAR MasterControl; // IO Address 0x0534 UCHAR MasterMask; // IO Address 0x0535 UCHAR SlaveControl; // IO Address 0x0536 UCHAR SlaveMask; // IO Address 0x0537 } XIO_INTERRUPT_CSRS, *PXIO_INTERRUPT_CSRS; enum _XIO_INTERRUPT_VECTORS { XioMasterBaseVector = 0x30, XioReservedVector = 0x30, XioSlaveCascadeVector, XioMasterPassiveReleaseVector = 0x37, XioSlaveBaseVector = 0x38, XioPciSlot0AVector = 0x38, XioPciSlot0BVector, XioPciSlot0CVector, XioPciSlot0DVector, XioPciSlot1AVector, XioPciSlot1BVector, XioPciSlot1CVector, XioPciSlot1DVector, XioSlavePassiveReleaseVector = 0x3f, }; #endif // XIO_PASS1 #ifdef XIO_PASS2 enum _XIO_INTERRUPT_VECTORS { XioBaseVector = 0xc0, // XIO Base Vector XioReservedVector = 0xc0, // XioIcIcIrq0 = 0xc0, // XioIcIcIrq1, // XioIcIcIrq2, // XioIcIcIrq3, // XioIcIcIrq4, // XioIcIcIrq5, // XioIcIcIrq6, // XioIcIcIrq7, // XioIcIcIrq8, // XioIcIcIrq9, // XioIcIcIrq10, // XioIcIcIrq11, // XioIcIcIrq12, // XioIcIcIrq13, // XioIcIcIrq14, // XioIcIcIrq15, // XioIcIcIrq16, // XioIcIcIrq17, // XioIcIcIrq18, // XioIcIcIrq19, // XioIcIcIrq20, // XioIcIcIrq21, // XioIcIcIrq22, // XioIcIcIrq23, // XioIcIcIrq24, // XioIcIcIrq25, // XioIcIcIrq26, // XioIcIcIrq27, // XioIcIcIrq28, // XioIcIcIrq29, // XioIcIcIrq30, // XioIcIcIrq31, // XioPciSlot4AVector, // PCI Slot 4 A XioPciSlot4BVector, // PCI Slot 4 B XioPciSlot4CVector, // PCI Slot 4 C XioPciSlot4DVector, // PCI Slot 4 D XioPciSlot5AVector, // PCI Slot 5 A XioPciSlot5BVector, // PCI Slot 5 B XioPciSlot5CVector, // PCI Slot 5 C XioPciSlot5DVector, // PCI Slot 5 D XioPciSlot6AVector, // PCI Slot 6 A XioPciSlot6BVector, // PCI Slot 6 B XioPciSlot6CVector, // PCI Slot 6 C XioPciSlot6DVector, // PCI Slot 6 D XioPciSlot7AVector, // PCI Slot 7 A XioPciSlot7BVector, // PCI Slot 7 B XioPciSlot7CVector, // PCI Slot 7 C XioPciSlot7DVector, // PCI Slot 7 D XioPciSlot0AVector, // PCI Slot 0 A XioPciSlot0BVector, // PCI Slot 0 B XioPciSlot0CVector, // PCI Slot 0 C XioPciSlot0DVector, // PCI Slot 0 D XioPciSlot1AVector, // PCI Slot 1 A XioPciSlot1BVector, // PCI Slot 1 B XioPciSlot1CVector, // PCI Slot 1 C XioPciSlot1DVector, // PCI Slot 1 D XioPciSlot2AVector, // PCI Slot 2 A XioPciSlot2BVector, // PCI Slot 2 B XioPciSlot2CVector, // PCI Slot 2 C XioPciSlot2DVector, // PCI Slot 2 D XioPciSlot3AVector, // PCI Slot 3 A XioPciSlot3BVector, // PCI Slot 3 B XioPciSlot3CVector, // PCI Slot 3 C XioPciSlot3DVector // PCI Slot 3 D }; #endif // XIO_PASS2 // // The following variable indicates whether an XIO module is present // in the system. // extern BOOLEAN HalpXioPresent; #endif // _LANGUAGE_ASSEMBLY #endif // _XIOREFH_