On 14/01/15 17:05, H Hartley Sweeten wrote:
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
I think the permissible values of the 'dma_dir' parameter need
documenting for comedi_isadma_set_mode() and comedi_isadma_alloc() in
patch 01, but that can be fixed up later.
Reviewed-by: Ian Abbott <abbo...@mev.co.uk>
--
-=( Ian Abbott @ MEV Ltd. E-mail: <abbo...@mev.co.uk> )=-
-=( Web: http://www.mev.co.uk/ )=-
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel