Commit | Line | Data |
---|---|---|
704daf28 BJ |
1 | /* |
2 | * ISA Bus Autoconfiguration | |
3 | * @(#)isa_device.h 1.1 (Berkeley) %G% | |
4 | */ | |
5 | ||
6 | /* | |
7 | * Per device structure. | |
8 | */ | |
9 | struct isa_device { | |
10 | struct isa_driver *id_driver; | |
11 | short id_iobase; /* base i/o address */ | |
12 | short id_irq; /* interrupt request */ | |
13 | short id_drq; /* DMA request */ | |
14 | caddr_t id_maddr; /* physical i/o memory address on bus (if any)*/ | |
15 | int id_msize; /* size of i/o memory */ | |
16 | int (*id_intr)(); /* interrupt interface routine */ | |
17 | int id_unit; /* unit number */ | |
18 | int id_scsiid; /* scsi id if needed */ | |
19 | int id_alive; /* device is present */ | |
20 | }; | |
21 | ||
22 | /* | |
23 | * Per-driver structure. | |
24 | * | |
25 | * Each device driver defines entries for a set of routines | |
26 | * as well as an array of types which are acceptable to it. | |
27 | * These are used at boot time by the configuration program. | |
28 | */ | |
29 | struct isa_driver { | |
30 | int (*probe)(); /* test whether device is present */ | |
31 | int (*attach)(); /* setup driver for a device */ | |
32 | char *name; /* device name */ | |
33 | }; | |
34 | ||
35 | extern struct isa_device isa_devtab_bio[], isa_devtab_tty[], isa_devtab_net[], | |
36 | isa_devtab_null[]; |