isadev
struct isadev sc_id; /* ISA device */
struct isadev sc_id;
isa_dmacascade(struct device *isadev, int chan)
struct isa_softc *sc = (struct isa_softc *)isadev;
isa_dmamap_create(struct device *isadev, int chan, bus_size_t size, int flags)
struct isa_softc *sc = (struct isa_softc *)isadev;
isa_dmamap_destroy(struct device *isadev, int chan)
struct isa_softc *sc = (struct isa_softc *)isadev;
isa_dmastart(struct device *isadev, int chan, void *addr, bus_size_t nbytes,
struct isa_softc *sc = (struct isa_softc *)isadev;
isa_dmaabort(struct device *isadev, int chan)
struct isa_softc *sc = (struct isa_softc *)isadev;
isa_dmacount(struct device *isadev, int chan)
struct isa_softc *sc = (struct isa_softc *)isadev;
isa_dmafinished(struct device *isadev, int chan)
struct isa_softc *sc = (struct isa_softc *)isadev;
isa_dmadone(struct device *isadev, int chan)
struct isa_softc *sc = (struct isa_softc *)isadev;
if (isa_dmafinished(isadev, chan) == 0)
isa_dmamem_alloc(struct device *isadev, int chan, bus_size_t size,
struct isa_softc *sc = (struct isa_softc *)isadev;
isa_dmamem_free(struct device *isadev, int chan, bus_addr_t addr,
struct isa_softc *sc = (struct isa_softc *)isadev;
isa_dmamem_map(struct device *isadev, int chan, bus_addr_t addr,
struct isa_softc *sc = (struct isa_softc *)isadev;
isa_dmamem_unmap(struct device *isadev, int chan, caddr_t kva, size_t size)
struct isa_softc *sc = (struct isa_softc *)isadev;
isa_drq_isfree(struct device *isadev, int chan)
struct isa_softc *sc = (struct isa_softc *)isadev;
isa_malloc(struct device *isadev, int chan, size_t size, int pool, int flags)
struct device *isadev;
if (isa_dmamem_alloc(isadev, chan, size, &addr, bflags))
if (isa_dmamem_map(isadev, chan, addr, size, &kva, bflags)) {
isa_dmamem_free(isadev, chan, addr, size);
isa_dmamem_unmap(isadev, chan, kva, size);
isa_dmamem_free(isadev, chan, addr, size);
m->isadev = isadev;
isa_dmamem_unmap(m->isadev, m->chan, kva, m->size);
isa_dmamem_free(m->isadev, m->chan, m->addr, m->size);
TAILQ_HEAD(, isadev)
TAILQ_ENTRY(isadev)
TAILQ_HEAD(, isadev)
#define ISA_DRQ_ISFREE(isadev, drq) \
((((struct isa_softc *)(isadev))->sc_drqmap & (1 << (drq))) == 0)
#define ISA_DRQ_ALLOC(isadev, drq) \
((struct isa_softc *)(isadev))->sc_drqmap |= (1 << (drq))
#define ISA_DRQ_FREE(isadev, drq) \
((struct isa_softc *)(isadev))->sc_drqmap &= ~(1 << (drq))
struct isadev sc_id; /* ISA device */
struct isadev sc_id;