12.07.2015 Views

INTRO (9) NetBSD Kernel Developer's Manual INTRO (9) NAME ...

INTRO (9) NetBSD Kernel Developer's Manual INTRO (9) NAME ...

INTRO (9) NetBSD Kernel Developer's Manual INTRO (9) NAME ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ISA (9) <strong>NetBSD</strong> <strong>Kernel</strong> Developer’s <strong>Manual</strong> ISA (9)For aDMA transfer from the device to the host, the DMA-transfer is started using isa_dmastart() withflags containing DMAMODE_READ. When the DMA transfer is completed, a call to isa_dmadone()cleans up the DMA transfer by unloading the memory from the controller. The memory can now beaccessby the driver.When the DMA resources are no longer required they should be released using isa_dmamem_unmap(),isa_dmamem_free() and isa_dmamap_destroy().CODE REFERENCESThis section describes places within the <strong>NetBSD</strong> source tree where actual code implementing or using themachine-independent ISA subsystem can be found. All pathnames are relative to /usr/src.The ISA subsystem itself is implemented within the files sys/dev/isa/isa.c andsys/dev/isa/isadma.c.SEE ALSOisa(4), autoconf(9), bus_dma(9), bus_space(9), driver(9), isapnp(9)HISTORYThe machine-independent ISA subsystem appeared in <strong>NetBSD</strong> 1.2.BUGSThe previous behaviour of isa_intr_establish() was to invoke panic() on failure.isa_intr_establish() now returns NULL on failure. Some old drivers written for the former behaviourdiscard the return value.<strong>NetBSD</strong> 3.0 January 29, 2006 6

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!