summaryrefslogtreecommitdiff
path: root/sys/dev/fdc
diff options
context:
space:
mode:
authorPoul-Henning Kamp <phk@FreeBSD.org>2004-07-04 23:16:04 +0000
committerPoul-Henning Kamp <phk@FreeBSD.org>2004-07-04 23:16:04 +0000
commit6fba12f206cd18d7ae4524ac2845cf94571bca40 (patch)
treea023569ce42c6b4ea98c59322a16dc29ace059df /sys/dev/fdc
parentc555963fd1f83bc929a8ccf18a15f75ec43a4b2c (diff)
Notes
Diffstat (limited to 'sys/dev/fdc')
-rw-r--r--sys/dev/fdc/fdc.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/dev/fdc/fdc.c b/sys/dev/fdc/fdc.c
index f61b11fbf98e..78839273f5d8 100644
--- a/sys/dev/fdc/fdc.c
+++ b/sys/dev/fdc/fdc.c
@@ -770,7 +770,7 @@ fdc_alloc_resources(struct fdc_data *fdc)
}
fdc->res_irq = bus_alloc_resource_any(dev, SYS_RES_IRQ,
- &fdc->rid_irq, RF_ACTIVE);
+ &fdc->rid_irq, RF_ACTIVE | RF_SHAREABLE);
if (fdc->res_irq == 0) {
device_printf(dev, "cannot reserve interrupt line\n");
return ENXIO;
@@ -782,9 +782,9 @@ fdc_alloc_resources(struct fdc_data *fdc)
RF_ACTIVE);
if (fdc->res_drq == 0) {
device_printf(dev, "cannot reserve DMA request line\n");
- return ENXIO;
- }
- fdc->dmachan = rman_get_start(fdc->res_drq);
+ fdc->flags |= FDC_NODMA;
+ } else
+ fdc->dmachan = rman_get_start(fdc->res_drq);
}
return 0;