[PATCH 00/16] staging: comedi: cleanup PCI driver detach

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Introduce a new helper function, comedi_pci_detach(), that can be used
as the (*detach) of a comedi PCI driver to handle the boilerplate code
of the PCI driver detach.

Use the the new helper to remove the boilerplate from most of the comedi
PCI drivers.

The jr3_pci and mite drivers (ni_660x, ni_pcidio, and ni_pcimio) need
a bit of additional cleanup before comedi_pci_disable() can be removed.

This series was orignally posted as a single patch:
[PATCH] staging: comedi: comedi_pci: enhance comedi_pci_disable()

Ian Abbott pointed out a couple issues and race conditions in that
patch.

This breaks the patch up and addresses the problems.

H Hartley Sweeten (16):
  staging: comedi: comedi_pci: introduce comedi_pci_detach()
  staging: comedi: adv_pci_dio: remove 'valid' member from private data
  staging: comedi: adv_pci_dio: use comedi_pci_detach()
  staging: comedi: amplc_dio200: remove dio200_detach()
  staging: comedi: amplc_dio200_pci: use comedi_pci_detach()
  staging: comedi: icp_multi: remove 'valid' member from private data
  staging: comedi: icp_multi: use comedi_pci_detach()
  staging: comedi: daqboard2000: driver does not request_irq()
  staging: comedi: daqboard2000: use comedi_pci_detach()
  staging: comedi: s626: tidy up freeing of the dma buffers
  staging: comedi: s626: use comedi_pci_detach()
  staging: comedi: cb_pcidas64: tidy up freeing of the dma buffers
  staging: comedi: cb_pcidas64: use comedi_pci_detach()
  staging: comedi: gsc_hpdi: tidy up freeing of the dma buffers
  staging: comedi: gsc_hpdi: use comedi_pci_detach()
  staging: comedi: rtd520: use comedi_pci_detach()

 drivers/staging/comedi/comedi_pci.c                | 24 ++++++
 drivers/staging/comedi/comedidev.h                 |  5 ++
 drivers/staging/comedi/drivers/8255_pci.c          |  9 +--
 .../staging/comedi/drivers/addi-data/addi_common.c | 12 +--
 drivers/staging/comedi/drivers/addi_apci_1032.c    |  4 +-
 drivers/staging/comedi/drivers/addi_apci_1516.c    |  2 +-
 drivers/staging/comedi/drivers/addi_apci_1564.c    |  4 +-
 drivers/staging/comedi/drivers/addi_apci_16xx.c    |  2 +-
 drivers/staging/comedi/drivers/addi_apci_2032.c    |  4 +-
 drivers/staging/comedi/drivers/addi_apci_2200.c    |  2 +-
 drivers/staging/comedi/drivers/addi_apci_3120.c    |  8 +-
 drivers/staging/comedi/drivers/addi_apci_3501.c    |  4 +-
 drivers/staging/comedi/drivers/addi_apci_3xxx.c    | 14 +---
 drivers/staging/comedi/drivers/adl_pci6208.c       |  2 +-
 drivers/staging/comedi/drivers/adl_pci7x3x.c       |  2 +-
 drivers/staging/comedi/drivers/adl_pci8164.c       |  2 +-
 drivers/staging/comedi/drivers/adl_pci9111.c       |  4 +-
 drivers/staging/comedi/drivers/adl_pci9118.c       |  8 +-
 drivers/staging/comedi/drivers/adv_pci1710.c       |  4 +-
 drivers/staging/comedi/drivers/adv_pci1723.c       |  2 +-
 drivers/staging/comedi/drivers/adv_pci1724.c       |  2 +-
 drivers/staging/comedi/drivers/adv_pci_dio.c       | 13 +---
 drivers/staging/comedi/drivers/amplc_dio200.c      |  8 +-
 drivers/staging/comedi/drivers/amplc_dio200.h      |  2 -
 .../staging/comedi/drivers/amplc_dio200_common.c   |  9 ---
 drivers/staging/comedi/drivers/amplc_dio200_pci.c  | 10 +--
 drivers/staging/comedi/drivers/amplc_pci224.c      |  4 +-
 drivers/staging/comedi/drivers/amplc_pci230.c      |  4 +-
 drivers/staging/comedi/drivers/amplc_pci236.c      |  9 +--
 drivers/staging/comedi/drivers/amplc_pci263.c      |  2 +-
 drivers/staging/comedi/drivers/cb_pcidas.c         | 13 +---
 drivers/staging/comedi/drivers/cb_pcidas64.c       | 90 +++++++++++-----------
 drivers/staging/comedi/drivers/cb_pcidda.c         |  2 +-
 drivers/staging/comedi/drivers/cb_pcimdas.c        |  9 +--
 drivers/staging/comedi/drivers/cb_pcimdda.c        |  2 +-
 drivers/staging/comedi/drivers/contec_pci_dio.c    |  2 +-
 drivers/staging/comedi/drivers/daqboard2000.c      | 12 +--
 drivers/staging/comedi/drivers/das08_pci.c         |  2 +-
 drivers/staging/comedi/drivers/dt3000.c            | 11 +--
 drivers/staging/comedi/drivers/dyna_pci10xx.c      |  2 +-
 drivers/staging/comedi/drivers/gsc_hpdi.c          | 59 +++++++-------
 drivers/staging/comedi/drivers/icp_multi.c         | 14 +---
 drivers/staging/comedi/drivers/ke_counter.c        |  2 +-
 drivers/staging/comedi/drivers/me4000.c            |  4 +-
 drivers/staging/comedi/drivers/me_daq.c            |  6 +-
 drivers/staging/comedi/drivers/mf6x4.c             |  5 +-
 drivers/staging/comedi/drivers/ni_6527.c           |  6 +-
 drivers/staging/comedi/drivers/ni_65xx.c           |  8 +-
 drivers/staging/comedi/drivers/ni_670x.c           |  4 +-
 drivers/staging/comedi/drivers/ni_labpc_pci.c      | 11 +--
 drivers/staging/comedi/drivers/rtd520.c            | 18 ++---
 drivers/staging/comedi/drivers/s626.c              | 51 +++++-------
 drivers/staging/comedi/drivers/skel.c              |  2 +-
 53 files changed, 195 insertions(+), 321 deletions(-)

-- 
2.0.3

_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel




[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux