[PATCH 00/12] staging: comedi: ni_labpc: split out ISA DMA support

Ian Abbott abbotti at mev.co.uk
Fri Jun 28 16:09:16 UTC 2013


The "ni_labpc" module is a common module for the "ni_labpc_cs" and
"ni_labpc_pci" modules.  It is also a comedi driver for National
Instruments Lab-PC ISA boards if the `COMEDI_NI_LABPC_ISA` option is
enabled.  In that case, the module may include code
to handle ISA DMA transfers if the `ISA_DMA_API` and `VIRT_TO_BUS`
options are also enabled.

Move the ISA DMA handling code into a new module "ni_labpc_isadma" which
is only built if the `COMEDI_NI_LABPC_ISA`, `ISA_DMA_API` and
`VIRT_TO_BUS` options are enabled.  This allows a bunch of `#ifdef`s to
be removed.

01) staging: comedi: ni_labpc: fix possible double-free of dma_buffer
02) staging: comedi: ni_labpc: don't clear cmd3 bits explicitly in
    labpc_ai_cmd()
03) staging: comedi: ni_labpc_isadma: new module for ISA DMA support
04) staging: comedi: ni_labpc: migrate DMA channel init & free
05) staging: comedi: ni_labpc_isadma: add labpc_have_dma_chan()
06) staging: comedi: ni_labpc: use labpc_have_dma_chan()
07) staging: comedi: ni_labpc: move register defs to new file
08) staging: comedi: ni_labpc: migrate DMA transfer set-up
09) staging: comedi: ni_labpc: migrate labpc_drain_dma()
10) staging: comedi: ni_labpc: migrate DMA status handling
11) staging: comedi: ni_labpc: tidy up after DMA code migration
12) staging: comedi: COMEDI_NI_LABPC_ISA no longer depends on
    VIRT_TO_BUS

 drivers/staging/comedi/Kconfig                   |   5 +-
 drivers/staging/comedi/drivers/Makefile          |   1 +
 drivers/staging/comedi/drivers/ni_labpc.c        | 279 ++---------------------
 drivers/staging/comedi/drivers/ni_labpc_isadma.c | 226 ++++++++++++++++++
 drivers/staging/comedi/drivers/ni_labpc_isadma.h |  57 +++++
 drivers/staging/comedi/drivers/ni_labpc_regs.h   |  75 ++++++
 6 files changed, 387 insertions(+), 256 deletions(-)


More information about the devel mailing list