The comedi legacy drivers that use ISA DMA all currently depend on the ISA_DMA_API being avaliable in order to be selected. The ISA_DMA_API is only needed to optionally support DMA when running asnyc commands. Introduce a new helper module that provides all the ISA DMA support. Modify the Kconfig to select this module when the ISA_DMA_API is avaliable. This removes the limitiation from the drivers and gets the support code into a single place for maintainability, Refactor all the comedi legacy drivers that use ISA DMA to use the new module. This series applies after: "[PATCH 00/37] staging: comedi: tidy up legacy DMA drivers" "[PATCH 00/25] staging: comedi: tidy up ISA DMA programming" H Hartley Sweeten (15): staging: comedi: comedi_isadma: introduce helper module for ISA DMA staging: comedi: pcl818: remove depends on ISA_DMA_API limitation staging: comedi: pcl816: remove depends on ISA_DMA_API limitation staging: comedi: pcl812: remove depends on ISA_DMA_API limitation staging: comedi: das16: remove depends on ISA_DMA_API limitation staging: comedi: das1800: remove depends on ISA_DMA_API limitation staging: comedi: dt282x: remove depends on ISA_DMA_API limitation staging: comedi: ni_at_a2150: remove depends on ISA_DMA_API limitation staging: comedi: ni_labpc_isadma: use comedi_isdma module staging: comedi: pcl818: simplify the dma->size calculations staging: comedi: pcl818: use common function to setup dma staging: comedi: pcl816: simplify the dma->size calculations staging: comedi: pcl816: use common function to setup dma staging: comedi: pcl812: simplify the dma->size calculations staging: comedi: pcl812: use common function to setup dma drivers/staging/comedi/Kconfig | 18 +- drivers/staging/comedi/drivers/Makefile | 1 + drivers/staging/comedi/drivers/comedi_isadma.c | 262 +++++++++++++++++++++++ drivers/staging/comedi/drivers/comedi_isadma.h | 116 ++++++++++ drivers/staging/comedi/drivers/das16.c | 173 ++++----------- drivers/staging/comedi/drivers/das1800.c | 178 +++++---------- drivers/staging/comedi/drivers/dt282x.c | 172 +++++---------- drivers/staging/comedi/drivers/ni_at_a2150.c | 156 ++++---------- drivers/staging/comedi/drivers/ni_labpc.h | 11 +- drivers/staging/comedi/drivers/ni_labpc_common.c | 2 +- drivers/staging/comedi/drivers/ni_labpc_isadma.c | 90 +++----- drivers/staging/comedi/drivers/ni_labpc_isadma.h | 16 +- drivers/staging/comedi/drivers/pcl812.c | 244 ++++++--------------- drivers/staging/comedi/drivers/pcl816.c | 245 +++++++-------------- drivers/staging/comedi/drivers/pcl818.c | 170 ++++----------- 15 files changed, 811 insertions(+), 1043 deletions(-) create mode 100644 drivers/staging/comedi/drivers/comedi_isadma.c create mode 100644 drivers/staging/comedi/drivers/comedi_isadma.h -- 2.0.3 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel