|
|
1.1 root 1: /* savax.h 6.1 83/07/29 */
2:
3: /*
4: * Standalone definitions peculiar to vaxen
5: * The mba devices in the standalone system are addressed as
6: * xx(unit,section)
7: * where unit is
8: * 8*mbanum+drive
9: * The mbadrv macro gives the address of the device registers
10: * for the specified unit; the mbamba macro gives the address of the
11: * mba registers themselves.
12: *
13: * The uba devices are also addressed by giving, as unit,
14: * 8*ubanum+drive
15: * The ubamem macro converts a specified unibus address (ala pdp-11)
16: * into a unibus memory address space address.
17: */
18:
19: int cpu; /* see <sys/cpu.h> */
20:
21: #define MAXNMBA 4
22: struct mba_regs **mbaddr;
23: int mbaact;
24: caddr_t *umaddr;
25: struct uba_regs **ubaddr;
26:
27: #define UNITTOMBA(unit) ((unit)>>3)
28: #define UNITTODRIVE(unit) ((unit)&07)
29:
30: #define mbamba(unit) (mbaddr[UNITTOMBA(unit)])
31: #define mbadrv(unit) (&mbamba(unit)->mba_drv[UNITTODRIVE(unit)])
32:
33: #define UNITTOUBA(unit) ((unit)>>3)
34: #define ubauba(unit) (ubaddr[UNITTOUBA(unit)])
35: #define ubamem(unit, off) ((umaddr[UNITTOUBA(unit)]+ubdevreg(off)))
36:
37: #define PHYSUBA0 0x20006000
38: #define PHYSMBA0 0x20010000
39: #define PHYSMBA1 0x20012000
40: #define PHYSUMEM 0x2013e000
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.