1 /* -*- mode: c; c-basic-offset: 8 -*- */ 2 3 /* Platform specific MCA defines */ 4 #ifndef _ASM_X86_MCA_H 5 #define _ASM_X86_MCA_H 6 7 /* Maximal number of MCA slots - actually, some machines have less, but 8 * they all have sufficient number of POS registers to cover 8. 9 */ 10 #define MCA_MAX_SLOT_NR 8 11 12 /* Most machines have only one MCA bus. The only multiple bus machines 13 * I know have at most two */ 14 #define MAX_MCA_BUSSES 2 15 16 #define MCA_PRIMARY_BUS 0 17 #define MCA_SECONDARY_BUS 1 18 19 /* Dummy slot numbers on primary MCA for integrated functions */ 20 #define MCA_INTEGSCSI (MCA_MAX_SLOT_NR) 21 #define MCA_INTEGVIDEO (MCA_MAX_SLOT_NR+1) 22 #define MCA_MOTHERBOARD (MCA_MAX_SLOT_NR+2) 23 24 /* Dummy POS values for integrated functions */ 25 #define MCA_DUMMY_POS_START 0x10000 26 #define MCA_INTEGSCSI_POS (MCA_DUMMY_POS_START+1) 27 #define MCA_INTEGVIDEO_POS (MCA_DUMMY_POS_START+2) 28 #define MCA_MOTHERBOARD_POS (MCA_DUMMY_POS_START+3) 29 30 /* MCA registers */ 31 32 #define MCA_MOTHERBOARD_SETUP_REG 0x94 33 #define MCA_ADAPTER_SETUP_REG 0x96 34 #define MCA_POS_REG(n) (0x100+(n)) 35 36 #define MCA_ENABLED 0x01 /* POS 2, set if adapter enabled */ 37 38 /* Max number of adapters, including both slots and various integrated 39 * things. 40 */ 41 #define MCA_NUMADAPTERS (MCA_MAX_SLOT_NR+3) 42 43 #endif /* _ASM_X86_MCA_H */ 44