1 /* cpudata.c 6.2 84/08/28 */ 2 3 #include "pte.h" 4 5 #include "param.h" 6 7 #include "cpu.h" 8 #include "nexus.h" 9 #include "../vaxuba/ubareg.h" 10 11 /* 12 * Initialization of per-cpu data structures. 13 */ 14 15 /* 16 * These are the (fixed) addresses of the (last 8k bytes of) 17 * unibus memory for each of the possible unibus adapters. Note that the 18 * unibus memory addresses are actually indexed by the unibus adapter type code. 19 */ 20 #if VAX780 21 caddr_t umaddr780[4] = { 22 (caddr_t) UMEM780(0), (caddr_t) UMEM780(1), 23 (caddr_t) UMEM780(2), (caddr_t) UMEM780(3) 24 }; 25 #endif 26 #if VAX750 27 caddr_t umaddr750[2] = { 28 (caddr_t) UMEM750(0), (caddr_t) UMEM750(1), 29 }; 30 #endif 31 #if VAX730 32 caddr_t umaddr730[1] = { 33 (caddr_t) UMEM730 34 }; 35 #endif 36 37 /* 38 * Information to patch around the stupidity of configuration 39 * registers not returning types on some of the processors. 40 */ 41 #if VAX750 42 short nexty750[NNEX750] = { 43 NEX_MEM16, NEX_MEM16, NEX_MEM16, NEX_MEM16, 44 NEX_MBA, NEX_MBA, NEX_MBA, NEX_MBA, 45 NEX_UBA0, NEX_UBA1, NEX_ANY, NEX_ANY, 46 NEX_ANY, NEX_ANY, NEX_ANY, NEX_ANY 47 }; 48 #endif 49 #if VAX730 50 short nexty730[NNEX730] = { 51 NEX_MEM16, NEX_ANY, NEX_ANY, NEX_ANY, 52 NEX_ANY, NEX_ANY, NEX_ANY, NEX_ANY, 53 }; 54 #endif 55 56 struct percpu percpu[] = { 57 #if VAX780 58 VAX_780, NNEX780, NEX780, umaddr780, NBDP780, 1, 0, 59 #endif 60 #if VAX750 61 VAX_750, NNEX750, NEX750, umaddr750, NBDP750, 0, nexty750, 62 #endif 63 #if VAX730 64 VAX_730, NNEX730, NEX730, umaddr730, NBDP730, 0, nexty730, 65 #endif 66 0, 67 }; 68