1: /*
2: * Copyright (c) 1986 Regents of the University of California.
3: * All rights reserved. The Berkeley software License Agreement
4: * specifies the terms and conditions for redistribution.
5: *
6: * @(#)ubavar.h 1.1 (2.10BSD Berkeley) 12/1/86
7: */
8:
9: /*
10: * Per ``device'' structure.
11: *
12: * This structure contains all the information necessary to run
13: * a unibus device such as a dz or a dh. It also contains information
14: * for slaves of unibus controllers as to which device on the slave
15: * this is. A flags field here can also be given in the system specification
16: * and is used to tell which dz lines are hard wired or other device
17: * specific parameters.
18: */
19: struct uba_device {
20: struct uba_driver *ui_driver;
21: short ui_unit; /* unit number on the system */
22: short ui_ubanum; /* the uba it is on */
23: caddr_t ui_addr; /* address of device in i/o space */
24: long ui_flags; /* parameter from system specification */
25: short ui_alive; /* device exists */
26: };
27:
28: /*
29: * Per-driver structure.
30: *
31: * Each unibus driver defines entries for a set of routines
32: * as well as an array of types which are acceptable to it.
33: *
34: * This is silly; clean it up. KB
35: */
36: struct uba_driver {
37: int (*ud_probe)(); /* see if a driver is really there */
38: int (*ud_slave)(); /* see if a slave is there */
39: int (*ud_attach)(); /* setup driver for a slave */
40: int (*ud_dgo)(); /* fill csr/ba to start transfer */
41: u_short *ud_addr; /* device csr addresses */
42: char *ud_dname; /* name of a device */
43: struct uba_device **ud_dinfo; /* backpointers to ubdinit structs */
44: };
45:
46: /*
47: * Flags to UBA map/bdp allocation routines
48: */
49: #define UBA_NEEDBDP 0x01 /* transfer needs a bdp */
50: #define UBA_CANTWAIT 0x02 /* don't block me */
51: #define UBA_NEED16 0x04 /* need 16 bit addresses only */
52: #define UBA_HAVEBDP 0x08 /* use bdp specified in high bits */
53:
54: ubadr_t uballoc();
55: #define ubarelse(a,b)
56: ubadr_t ubmalloc();
Defined struct's
uba_device
defined in line
19; used 162 times
- in line 43(2)
- in /usr/src/sys/netimp/if_imp.c line
92(2)
- in /usr/src/sys/pdpif/if_acc.c line
38(2),
108(2),
137(2),
159(2)
- in /usr/src/sys/pdpif/if_css.c line
60(2),
131(2),
159(2),
179(2),
266(2),
302(2)
- in /usr/src/sys/pdpif/if_de.c line
101(2),
171(2),
261(2),
387(2),
441(2),
1067(2),
1313(2),
1349(2),
1390(2)
- in /usr/src/sys/pdpif/if_dmc.c line
47(2),
121(2),
145(2),
182(2),
270(2),
367(2)
- in /usr/src/sys/pdpif/if_ec.c line
89(2),
117(2),
794(2)
- in /usr/src/sys/pdpif/if_en.c line
41(2),
105(2),
128(2),
172(2),
224(2)
- in /usr/src/sys/pdpif/if_il.c line
65(2),
135(2),
188(2),
211(2),
333(2),
391(2)
- in /usr/src/sys/pdpif/if_qe.c line
185(2),
222(2),
291(2),
357(2)
- in /usr/src/sys/pdpif/if_qt.c line
130(2),
173(2)
- in /usr/src/sys/pdpif/if_sri.c line
32(2),
122(2),
149(2),
171(2)
- in /usr/src/sys/pdpif/if_vv.c line
105(2),
184(2),
219(2),
236(2),
307(2),
414(2),
476(2)
- in /usr/src/sys/pdpuba/dh.c line
37-38(4),
87(2),
104(2),
127(2),
711(2)
- in /usr/src/sys/pdpuba/dhu.c line
40(2),
90(2),
116(2),
250(2),
482(2)
- in /usr/src/sys/pdpuba/dhv.c line
47(2),
134(2),
259(2),
521(2)
- in /usr/src/sys/pdpuba/dz.c line
32(2),
91(2)
- in /usr/src/sys/sys/sys_net.c line
81(2),
135(2)
- in /usr/src/usr.bin/uucp/acucntrl.c line
640(2),
674(2),
684(2),
694(2)
Defined macros
Usage of this include