diff options
author | wollman <wollman@FreeBSD.org> | 1995-04-12 20:48:13 +0000 |
---|---|---|
committer | wollman <wollman@FreeBSD.org> | 1995-04-12 20:48:13 +0000 |
commit | 6a8d3a357d2d39cf1274d89e9ee73459574e038d (patch) | |
tree | 3733f361a8298b0f38c2e4586c976a9240816ec2 /sys/i386/isa/aic6360.c | |
parent | 669ed5b46ea62e3997fc8495702ddc9078fa7031 (diff) | |
download | FreeBSD-src-6a8d3a357d2d39cf1274d89e9ee73459574e038d.zip FreeBSD-src-6a8d3a357d2d39cf1274d89e9ee73459574e038d.tar.gz |
Add a class field to devconf and mst drivers.
For those where it was easy, drivers were also fixed to call
dev_attach() during probe rather than attach (in keeping with the
new design articulated in a mail message five months ago). For
a few that were really easy, correct state tracking was added as well.
The `fd' driver was fixed to correctly fill in the description.
The CPU identify code was fixed to attach a `cpu' device. The code
was also massively reordered to fill in cpu_model with somethingremotely
resembling what identifycpu() prints out. A few bytes saved by using
%b to format the features list rather than lots of ifs.
Diffstat (limited to 'sys/i386/isa/aic6360.c')
-rw-r--r-- | sys/i386/isa/aic6360.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/sys/i386/isa/aic6360.c b/sys/i386/isa/aic6360.c index 4d648db..daa9885 100644 --- a/sys/i386/isa/aic6360.c +++ b/sys/i386/isa/aic6360.c @@ -31,7 +31,7 @@ */ /* - * $Id: aic6360.c,v 1.6 1995/03/01 22:30:47 dufault Exp $ + * $Id: aic6360.c,v 1.7 1995/03/28 07:55:24 bde Exp $ * * Acknowledgements: Many of the algorithms used in this driver are * inspired by the work of Julian Elischer (julian@tfs.com) and @@ -756,8 +756,9 @@ static struct kern_devconf kdc_aic[NAIC] = { { isa_generic_externalize, 0, 0, ISA_EXTERNALLEN, &kdc_isa0, /* parent */ 0, /* parentdata */ - DC_BUSY, /* host adapters are always busy */ - "Adaptec AIC-6360 SCSI host adapter chipset" + DC_UNCONFIGURED, /* start out in unconfig state */ + "Adaptec AIC-6360 SCSI host adapter chipset", + DC_CLS_MISC /* host adapters aren't special */ } }; static inline void @@ -818,6 +819,9 @@ aicprobe(parent, self, aux) bzero(aic, sizeof(struct aic_data)); aicdata[unit] = aic; aic->iobase = dev->id_iobase; +#ifndef DEV_LKM + aic_registerdev(dev); +#endif /* not DEV_LKM */ if (aic_find(aic) != 0) { aicdata[unit] = NULL; @@ -825,7 +829,6 @@ aicprobe(parent, self, aux) return 0; } aicunit++; - aic_registerdev(dev); return 0x20; #else #ifdef NEWCONFIG @@ -963,6 +966,7 @@ aicattach(parent, self, aux) /* * ask the adapter what subunits are present */ + kdc_aic[unit].kdc_state = DC_BUSY; /* host adapters are always busy */ scsi_attachdevs(&(aic->sc_link)); return 1; |