summaryrefslogtreecommitdiffstats
path: root/sys/isa
diff options
context:
space:
mode:
authorjulian <julian@FreeBSD.org>1998-07-13 08:23:05 +0000
committerjulian <julian@FreeBSD.org>1998-07-13 08:23:05 +0000
commit1dc298263b8472c42f06ae8d53d88b88d443c895 (patch)
treef7b039cefef35b7038646d2a611116206a1c3f50 /sys/isa
parent1805fa7aa872b21ea42eaf5c8226a0739bc9f86f (diff)
downloadFreeBSD-src-1dc298263b8472c42f06ae8d53d88b88d443c895.zip
FreeBSD-src-1dc298263b8472c42f06ae8d53d88b88d443c895.tar.gz
SLICE probing becomes asynchronous. It can now be triggered by
interupt level events. This needs a lot of cleanup, but has been working here for a month or two.. originally needed for CAM integration but that hasn't happenned yet. The probing state machines for each handler should be replaced by a more generic state-service. It's still quite messy in there..
Diffstat (limited to 'sys/isa')
-rw-r--r--sys/isa/fd.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/sys/isa/fd.c b/sys/isa/fd.c
index 91973cc..c26370b 100644
--- a/sys/isa/fd.c
+++ b/sys/isa/fd.c
@@ -44,7 +44,7 @@
* SUCH DAMAGE.
*
* from: @(#)fd.c 7.4 (Berkeley) 5/25/91
- * $Id: fd.c,v 1.115 1998/07/04 22:30:16 julian Exp $
+ * $Id: fd.c,v 1.116 1998/07/11 06:35:37 bde Exp $
*
*/
@@ -794,7 +794,6 @@ fdattach(struct isa_device *dev)
&fd->subdevs[0],
&fd->subdevs[0].limit,
&fd->subdevs[0].slice,
- NULL,
namebuf);
/* Allow full probing */
fd->subdevs[0].slice->probeinfo.typespecific = NULL;
@@ -861,7 +860,6 @@ fdattach(struct isa_device *dev)
&fd->subdevs[i],
&fd->subdevs[i].limit,
&fd->subdevs[i].slice,
- NULL,
namebuf);
/* Allow full probing */
fd->subdevs[i].slice->probeinfo.typespecific = NULL;
@@ -914,10 +912,9 @@ fdsinit(void *arg)
struct subdev *sd = arg;
sh_p tp;
- if ((tp = slice_probeall(sd->slice)) != NULL) {
- (*tp->constructor)(sd->slice);
- }
+ slice_start_probe(sd->slice);
config_intrhook_disestablish(&sd->drive->ich);
+ DELAY(2000000); /* XXX */
}
#endif /* SLICE */
OpenPOWER on IntegriCloud