diff options
author | dfr <dfr@FreeBSD.org> | 1999-10-12 21:35:51 +0000 |
---|---|---|
committer | dfr <dfr@FreeBSD.org> | 1999-10-12 21:35:51 +0000 |
commit | 229cdb91443142db582b7e32098f62f6446c3f3a (patch) | |
tree | 8eaacbe4f132a095dfe6be00173bd751633a034d /sys/dev | |
parent | b203e98b2b9de39cedbf62c7eb859ade4d60e6bc (diff) | |
download | FreeBSD-src-229cdb91443142db582b7e32098f62f6446c3f3a.zip FreeBSD-src-229cdb91443142db582b7e32098f62f6446c3f3a.tar.gz |
* Add struct resource_list* argument to resource_list_alloc and
resource_list_release. This removes the dependancy on the
layout of ivars.
* Move set_resource, get_resource and delete_resource from
isa_if.m to bus_if.m.
* Simplify driver code by providing wrappers to those methods:
bus_set_resource(dev, type, rid, start, count);
bus_get_resource(dev, type, rid, startp, countp);
bus_get_resource_start(dev, type, rid);
bus_get_resource_count(dev, type, rid);
bus_delete_resource(dev, type, rid);
* Delete isa_get_rsrc and use bus_get_resource_start instead.
* Fix a stupid typo in isa_alloc_resource reported by Takahashi
Yoshihiro <nyan@FreeBSD.org>.
* Print a diagnostic message if we can't assign resources to a PnP
device.
* Change device_print_prettyname() so that it doesn't print
"(no driver assigned)-1" for anonymous devices.
Diffstat (limited to 'sys/dev')
-rw-r--r-- | sys/dev/aha/aha_isa.c | 14 | ||||
-rw-r--r-- | sys/dev/buslogic/bt_isa.c | 6 | ||||
-rw-r--r-- | sys/dev/ed/if_ed.c | 33 | ||||
-rw-r--r-- | sys/dev/pcm/isa/mss.c | 4 | ||||
-rw-r--r-- | sys/dev/pcm/isa/sb.c | 7 | ||||
-rw-r--r-- | sys/dev/sound/isa/mss.c | 4 | ||||
-rw-r--r-- | sys/dev/sound/isa/sb.c | 7 | ||||
-rw-r--r-- | sys/dev/sound/isa/sb16.c | 7 | ||||
-rw-r--r-- | sys/dev/sound/isa/sb8.c | 7 |
9 files changed, 35 insertions, 54 deletions
diff --git a/sys/dev/aha/aha_isa.c b/sys/dev/aha/aha_isa.c index cb55409..0720aa7 100644 --- a/sys/dev/aha/aha_isa.c +++ b/sys/dev/aha/aha_isa.c @@ -83,8 +83,8 @@ aha_isa_probe(device_t dev) if (ISA_PNP_PROBE(device_get_parent(dev), dev, aha_ids) == ENXIO) return (ENXIO); - error = ISA_GET_RESOURCE(device_get_parent(dev), dev, SYS_RES_IOPORT, - 0, &port_start, &port_count); + error = bus_get_resource(dev, SYS_RES_IOPORT, 0, + &port_start, &port_count); if (error != 0) port_start = 0; @@ -111,8 +111,8 @@ aha_isa_probe(device_t dev) */ if (aha_check_probed_iop(ioport) != 0) continue; - error = ISA_SET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IOPORT, 0, ioport, AHA_NREGS); + error = bus_set_resource(dev, SYS_RES_IOPORT, 0, + ioport, AHA_NREGS); if (error) return error; @@ -179,14 +179,12 @@ aha_isa_probe(device_t dev) "Failing probe\n", ioport); return (ENXIO); } - error = ISA_SET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_DRQ, 0, drq, 1); + error = bus_set_resource(dev, SYS_RES_DRQ, 0, drq, 1); if (error) return error; irq = ffs(config_data.irq) + 8; - error = ISA_SET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IRQ, 0, irq, 1); + error = bus_set_resource(dev, SYS_RES_IRQ, 0, irq, 1); if (error) return error; diff --git a/sys/dev/buslogic/bt_isa.c b/sys/dev/buslogic/bt_isa.c index b51fe8e..9377be9 100644 --- a/sys/dev/buslogic/bt_isa.c +++ b/sys/dev/buslogic/bt_isa.c @@ -172,10 +172,8 @@ bt_isa_probe(device_t dev) bt_isa_release_resources(dev); - ISA_SET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_DRQ, 0, info.drq, 1); - ISA_SET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IRQ, 0, info.irq, 1); + bus_set_resource(dev, SYS_RES_DRQ, 0, info.drq, 1); + bus_set_resource(dev, SYS_RES_IRQ, 0, info.irq, 1); return (0); } diff --git a/sys/dev/ed/if_ed.c b/sys/dev/ed/if_ed.c index 97d04d3..f35c1c4 100644 --- a/sys/dev/ed/if_ed.c +++ b/sys/dev/ed/if_ed.c @@ -555,8 +555,7 @@ ed_probe_WD80x3(dev) memsize = 8192; } - error = ISA_GET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_MEMORY, 0, + error = bus_get_resource(dev, SYS_RES_MEMORY, 0, &conf_maddr, &conf_msize); if (error) return (error); @@ -606,12 +605,10 @@ ed_probe_WD80x3(dev) /* * If no interrupt specified (or "?"), use what the board tells us. */ - error = ISA_GET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IRQ, 0, + error = bus_get_resource(dev, SYS_RES_IRQ, 0, &irq, &junk); if (error) { - ISA_SET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IRQ, 0, + bus_set_resource(dev, SYS_RES_IRQ, 0, ed_intr_val[iptr], 1); } @@ -633,12 +630,10 @@ ed_probe_WD80x3(dev) /* * If no interrupt specified (or "?"), use what the board tells us. */ - error = ISA_GET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IRQ, 0, + error = bus_get_resource(dev, SYS_RES_IRQ, 0, &irq, &junk); if (error) { - ISA_SET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IRQ, 0, + bus_set_resource(dev, SYS_RES_IRQ, 0, ed_790_intr_val[iptr], 1); } @@ -648,8 +643,7 @@ ed_probe_WD80x3(dev) outb(sc->asic_addr + ED_WD790_ICR, inb(sc->asic_addr + ED_WD790_ICR) | ED_WD790_ICR_EIL); } - error = ISA_GET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IRQ, 0, + error = bus_get_resource(dev, SYS_RES_IRQ, 0, &irq, &junk); if (error) { device_printf(dev, "%s cards don't support auto-detected/assigned interrupts.\n", @@ -850,8 +844,7 @@ ed_probe_3Com(dev) return (ENXIO); } - error = ISA_GET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_MEMORY, 0, + error = bus_get_resource(dev, SYS_RES_MEMORY, 0, &conf_maddr, &conf_msize); if (error) return (error); @@ -1019,8 +1012,7 @@ ed_probe_3Com(dev) /* * Set IRQ. 3c503 only allows a choice of irq 2-5. */ - error = ISA_GET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IRQ, 0, + error = bus_get_resource(dev, SYS_RES_IRQ, 0, &irq, &junk); if (error) return (error); @@ -1464,12 +1456,10 @@ ed_probe_HP_pclanp(dev) * of the IRQ. If the kernel IRQ was explicitly specified, it * should match that of the hardware. */ - error = ISA_GET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IRQ, 0, + error = bus_get_resource(dev, SYS_RES_IRQ, 0, &conf_irq, &junk); if (error) { - ISA_SET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IRQ, 0, + bus_set_resource(dev, SYS_RES_IRQ, 0, ed_hpp_intr_val[irq], 1); } else { if (conf_irq != ed_hpp_intr_val[irq]) @@ -1515,8 +1505,7 @@ ed_probe_HP_pclanp(dev) * Check that the kernel specified start of memory and * hardware's idea of it match. */ - error = ISA_GET_RESOURCE(device_get_parent(dev), dev, - SYS_RES_MEMORY, 0, + error = bus_get_resource(dev, SYS_RES_MEMORY, 0, &conf_maddr, &conf_msize); if (error) return (error); diff --git a/sys/dev/pcm/isa/mss.c b/sys/dev/pcm/isa/mss.c index 588a430..fe3d79a 100644 --- a/sys/dev/pcm/isa/mss.c +++ b/sys/dev/pcm/isa/mss.c @@ -449,7 +449,7 @@ mss_probe(device_t dev) mss->io_rid = 0; /* XXX verify this */ setres = 1; - ISA_SET_RESOURCE(device_get_parent(dev), dev, SYS_RES_IOPORT, mss->io_rid, + bus_set_resource(dev, SYS_RES_IOPORT, mss->io_rid, 0x530, 8); mss->io_base = bus_alloc_resource(dev, SYS_RES_IOPORT, &mss->io_rid, 0, ~0, 8, RF_ACTIVE); @@ -866,7 +866,7 @@ mss_attach(device_t dev) mss->drq1_rid = 0; mss->drq2_rid = -1; if (flags & DV_F_DUAL_DMA) { - ISA_SET_RESOURCE(device_get_parent(dev), dev, SYS_RES_DRQ, 1, + bus_set_resource(dev, SYS_RES_DRQ, 1, flags & DV_F_DRQ_MASK, 1); mss->drq2_rid = 1; } diff --git a/sys/dev/pcm/isa/sb.c b/sys/dev/pcm/isa/sb.c index 94af544..bdc2a8b 100644 --- a/sys/dev/pcm/isa/sb.c +++ b/sys/dev/pcm/isa/sb.c @@ -573,8 +573,7 @@ sb_probe(device_t dev) no: i = sb->io_rid; sb_release_resources(sb, dev); - if (allocated) ISA_DELETE_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IOPORT, i); + if (allocated) bus_delete_resource(dev, SYS_RES_IOPORT, i); return error; } @@ -647,8 +646,8 @@ sb_attach(device_t dev) int flags = device_get_flags(dev); if (flags & DV_F_DUAL_DMA) { - ISA_SET_RESOURCE(device_get_parent(dev), dev, SYS_RES_DRQ, 1, - flags & DV_F_DRQ_MASK, 1); + bus_set_resource(dev, SYS_RES_DRQ, 1, + flags & DV_F_DRQ_MASK, 1); } sb = (struct sb_info *)malloc(sizeof *sb, M_DEVBUF, M_NOWAIT); if (!sb) return ENXIO; diff --git a/sys/dev/sound/isa/mss.c b/sys/dev/sound/isa/mss.c index 588a430..fe3d79a 100644 --- a/sys/dev/sound/isa/mss.c +++ b/sys/dev/sound/isa/mss.c @@ -449,7 +449,7 @@ mss_probe(device_t dev) mss->io_rid = 0; /* XXX verify this */ setres = 1; - ISA_SET_RESOURCE(device_get_parent(dev), dev, SYS_RES_IOPORT, mss->io_rid, + bus_set_resource(dev, SYS_RES_IOPORT, mss->io_rid, 0x530, 8); mss->io_base = bus_alloc_resource(dev, SYS_RES_IOPORT, &mss->io_rid, 0, ~0, 8, RF_ACTIVE); @@ -866,7 +866,7 @@ mss_attach(device_t dev) mss->drq1_rid = 0; mss->drq2_rid = -1; if (flags & DV_F_DUAL_DMA) { - ISA_SET_RESOURCE(device_get_parent(dev), dev, SYS_RES_DRQ, 1, + bus_set_resource(dev, SYS_RES_DRQ, 1, flags & DV_F_DRQ_MASK, 1); mss->drq2_rid = 1; } diff --git a/sys/dev/sound/isa/sb.c b/sys/dev/sound/isa/sb.c index 94af544..bdc2a8b 100644 --- a/sys/dev/sound/isa/sb.c +++ b/sys/dev/sound/isa/sb.c @@ -573,8 +573,7 @@ sb_probe(device_t dev) no: i = sb->io_rid; sb_release_resources(sb, dev); - if (allocated) ISA_DELETE_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IOPORT, i); + if (allocated) bus_delete_resource(dev, SYS_RES_IOPORT, i); return error; } @@ -647,8 +646,8 @@ sb_attach(device_t dev) int flags = device_get_flags(dev); if (flags & DV_F_DUAL_DMA) { - ISA_SET_RESOURCE(device_get_parent(dev), dev, SYS_RES_DRQ, 1, - flags & DV_F_DRQ_MASK, 1); + bus_set_resource(dev, SYS_RES_DRQ, 1, + flags & DV_F_DRQ_MASK, 1); } sb = (struct sb_info *)malloc(sizeof *sb, M_DEVBUF, M_NOWAIT); if (!sb) return ENXIO; diff --git a/sys/dev/sound/isa/sb16.c b/sys/dev/sound/isa/sb16.c index 94af544..bdc2a8b 100644 --- a/sys/dev/sound/isa/sb16.c +++ b/sys/dev/sound/isa/sb16.c @@ -573,8 +573,7 @@ sb_probe(device_t dev) no: i = sb->io_rid; sb_release_resources(sb, dev); - if (allocated) ISA_DELETE_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IOPORT, i); + if (allocated) bus_delete_resource(dev, SYS_RES_IOPORT, i); return error; } @@ -647,8 +646,8 @@ sb_attach(device_t dev) int flags = device_get_flags(dev); if (flags & DV_F_DUAL_DMA) { - ISA_SET_RESOURCE(device_get_parent(dev), dev, SYS_RES_DRQ, 1, - flags & DV_F_DRQ_MASK, 1); + bus_set_resource(dev, SYS_RES_DRQ, 1, + flags & DV_F_DRQ_MASK, 1); } sb = (struct sb_info *)malloc(sizeof *sb, M_DEVBUF, M_NOWAIT); if (!sb) return ENXIO; diff --git a/sys/dev/sound/isa/sb8.c b/sys/dev/sound/isa/sb8.c index 94af544..bdc2a8b 100644 --- a/sys/dev/sound/isa/sb8.c +++ b/sys/dev/sound/isa/sb8.c @@ -573,8 +573,7 @@ sb_probe(device_t dev) no: i = sb->io_rid; sb_release_resources(sb, dev); - if (allocated) ISA_DELETE_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IOPORT, i); + if (allocated) bus_delete_resource(dev, SYS_RES_IOPORT, i); return error; } @@ -647,8 +646,8 @@ sb_attach(device_t dev) int flags = device_get_flags(dev); if (flags & DV_F_DUAL_DMA) { - ISA_SET_RESOURCE(device_get_parent(dev), dev, SYS_RES_DRQ, 1, - flags & DV_F_DRQ_MASK, 1); + bus_set_resource(dev, SYS_RES_DRQ, 1, + flags & DV_F_DRQ_MASK, 1); } sb = (struct sb_info *)malloc(sizeof *sb, M_DEVBUF, M_NOWAIT); if (!sb) return ENXIO; |