1 /* mbavar.h 4.3 02/03/81 */ 2 3 #if VAX==780 4 /* 5 * VAX Massbus adapter registers 6 */ 7 8 struct mba_drv 9 { 10 int mbd_cs1; 11 int mbd_ds; 12 int mbd_er1; 13 int mbd_mr1; 14 int mbd_as; 15 int mbd_da; 16 #define mbd_fc mbd_da 17 int mbd_dt; 18 int mbd_la; 19 #define mbd_ck mbd_la 20 int mbd_sn; 21 int mbd_of; 22 #define mbd_tc mbd_of 23 int mbd_fill[22]; 24 }; 25 /* 26 * Bits in mbd_dt. 27 */ 28 #define MBDT_NSA 0x8000 /* not sector addressible */ 29 #define MBDT_TAP 0x4000 /* is a tape */ 30 #define MBDT_MOH 0x2000 /* moving head */ 31 #define MBDT_7CH 0x1000 /* 7 channel */ 32 #define MBDT_DRQ 0x800 /* drive request required */ 33 #define MBDT_SPR 0x400 /* slave present */ 34 35 #define MBDT_TYPE 0x1ff 36 #define MBDT_MASK (MBDT_NSA|MBDT_TAP|MBDT_TYPE) 37 38 #define MBDT_RP04 020 39 #define MBDT_RP05 021 40 #define MBDT_RP06 022 41 #define MBDT_RP07 042 42 #define MBDT_RM03 024 43 #define MBDT_RM05 027 44 #define MBDT_RM80 026 45 46 #define MBDT_TM03 050 47 #define MBDT_TE16 051 48 #define MBDT_TU45 052 49 #define MBDT_TU77 054 50 #define MBDT_TU78 0140 51 52 /* 53 * Bits in mbd_ds. 54 */ 55 #define MBD_DRY 0x80 56 #define MBD_MOL 0x1000 57 #define MBD_DPR 0x100 58 #define MBD_ERR 0x4000 59 60 #define MBD_WCOM 0x30 61 #define MBD_RCOM 0x38 62 #define MBD_GO 0x1 63 64 struct mba_regs 65 { 66 int mba_csr; 67 int mba_cr; 68 int mba_sr; 69 int mba_var; 70 int mba_bcr; 71 int mba_dr; 72 int mba_pad1[250]; 73 struct mba_drv mba_drv[8]; 74 struct pte mba_map[256]; 75 int mba_pad2[256*5]; 76 }; 77 78 #define MBAINIT 0x1 79 #define MBAIE 0x4 80 81 #define MBAEBITS 0xe0770 82 83 #define PHYSMBA0 ((struct mba_regs *)0x20010000) 84 #define PHYSMBA1 ((struct mba_regs *)0x20012000) 85 86 #define mbadev(mba,unit) ((struct device *)&mba->mba_drv[unit]) 87 88 #ifdef KERNEL 89 struct mba_info 90 { 91 struct mba_regs *mi_loc; /* virtual mba */ 92 struct mba_regs *mi_phys; /* physical mba */ 93 struct pte *mi_map; /* page table base for nexus */ 94 }; 95 96 #define MBA0 ((struct mba_regs *)0x80064000) 97 #define MBA1 ((struct mba_regs *)0x80066000) 98 99 int mbanum[]; 100 struct mba_info mbainfo[]; 101 int mbaact; 102 #endif 103 #endif 104