staging: comedi: remove private header comedi_pci.h
PATCH 1/1 staging: comedi: remove private header comedi_pci.h
Remove the private header, comedi_pci.h, by moving the two helper functions into divers.c and providing the prototypes in comedidev.h.
This allows the comedi_pci_enable/disable helper functions to be shared instead of having an inline version in every comedi pci driver.
---
Note: The pci helper functions are all defined as stubs in pci.h when CONFIG_PCI is not enabled.
drivers/staging/comedi/comedidev.h | 5 +- drivers/staging/comedi/drivers.c | 34 +++++++++++ .../comedi/drivers/addi-data/addi_amcc_s5933.h | 2 - drivers/staging/comedi/drivers/adl_pci6208.c | 1 - drivers/staging/comedi/drivers/adl_pci7230.c | 1 - drivers/staging/comedi/drivers/adl_pci7296.c | 1 - drivers/staging/comedi/drivers/adl_pci7432.c | 1 - drivers/staging/comedi/drivers/adl_pci8164.c | 1 - drivers/staging/comedi/drivers/adl_pci9111.c | 1 - drivers/staging/comedi/drivers/adl_pci9118.c | 1 - drivers/staging/comedi/drivers/adv_pci1710.c | 2 - drivers/staging/comedi/drivers/adv_pci1723.c | 2 - drivers/staging/comedi/drivers/adv_pci_dio.c | 1 - drivers/staging/comedi/drivers/amplc_dio200.c | 2 - drivers/staging/comedi/drivers/amplc_pc236.c | 2 - drivers/staging/comedi/drivers/amplc_pc263.c | 2 - drivers/staging/comedi/drivers/amplc_pci224.c | 2 - drivers/staging/comedi/drivers/amplc_pci230.c | 1 - drivers/staging/comedi/drivers/cb_pcidas.c | 1 - drivers/staging/comedi/drivers/cb_pcidas64.c | 1 - drivers/staging/comedi/drivers/cb_pcidda.c | 2 - drivers/staging/comedi/drivers/cb_pcidio.c | 1 - drivers/staging/comedi/drivers/cb_pcimdas.c | 1 - drivers/staging/comedi/drivers/cb_pcimdda.c | 2 - drivers/staging/comedi/drivers/comedi_pci.h | 60 -------------------- drivers/staging/comedi/drivers/contec_pci_dio.c | 2 - drivers/staging/comedi/drivers/daqboard2000.c | 1 - drivers/staging/comedi/drivers/das08.c | 1 - drivers/staging/comedi/drivers/dt3000.c | 2 - drivers/staging/comedi/drivers/dyna_pci10xx.c | 1 - drivers/staging/comedi/drivers/gsc_hpdi.c | 1 - drivers/staging/comedi/drivers/icp_multi.h | 1 - drivers/staging/comedi/drivers/jr3_pci.c | 1 - drivers/staging/comedi/drivers/ke_counter.c | 2 - drivers/staging/comedi/drivers/me4000.c | 1 - drivers/staging/comedi/drivers/me_daq.c | 2 - drivers/staging/comedi/drivers/mite.c | 1 - drivers/staging/comedi/drivers/rtd520.c | 1 - drivers/staging/comedi/drivers/s626.c | 2 - 39 files changed, 37 insertions(+), 112 deletions(-)
drivers/staging/comedi/comedidev.h +3 -2
@@ -40,6 +40,7 @@#include <linux/uaccess.h> #include <linux/io.h> #include <linux/timer.h> +#include <linux/pci.h> #include "comedi.h"
@@ -180,7 +181,6 @@ struct comedi_async { unsigned int x); }; -struct pci_dev ;struct usb_interface ;struct comedi_driver {
@@ -310,7 +310,8 @@ int comedi_driver_unregister(struct comedi_driver *);module_driver (__comedi_driver, comedi_driver_register, \ comedi_driver_unregister) -struct pci_driver ; +int comedi_pci_enable (struct pci_dev *,const char *); +void comedi_pci_disable (struct pci_dev *);int comedi_pci_driver_register (struct comedi_driver *,struct pci_driver *);void comedi_pci_driver_unregister (struct comedi_driver *,struct pci_driver *);
drivers/staging/comedi/drivers.c +34 -0
@@ -908,6 +908,40 @@ static void comedi_auto_unconfig(struct device *hardware_device)comedi_free_board_minor (minor); } +/** +* comedi_pci_enable() - Enable the PCI device and request the regions. +* @pdev: pci_dev struct +* @res_name: name for the requested reqource +*/ +int comedi_pci_enable (struct pci_dev *pdev,const char *res_name) +{ +int rc; + + rc =pci_enable_device (pdev); +if (rc <0 ) +return rc; + + rc =pci_request_regions (pdev, res_name); +if (rc <0 ) +pci_disable_device (pdev); + +return rc; +} +EXPORT_SYMBOL_GPL (comedi_pci_enable); + +/** +* comedi_pci_disable() - Release the regions and disable the PCI device. +* @pdev: pci_dev struct +* +* This must be matched with a previous successful call to comedi_pci_enable(). +*/ +void comedi_pci_disable (struct pci_dev *pdev) +{ +pci_release_regions (pdev); +pci_disable_device (pdev); +} +EXPORT_SYMBOL_GPL (comedi_pci_disable); +static int comedi_old_pci_auto_config (struct pci_dev *pcidev,struct comedi_driver *driver) {
drivers/staging/comedi/drivers/addi-data/addi_amcc_s5933.h +0 -2
@@ -22,8 +22,6 @@#include "../../comedidev.h" -#include "../comedi_pci.h" -#ifdef PCI_SUPPORT_VER1 #error No support for 2.1.55 and older#endif
drivers/staging/comedi/drivers/adl_pci6208.c +0 -1
@@ -52,7 +52,6 @@ References:* options that are used with comedi_config. */ #include "../comedidev.h" -#include "comedi_pci.h" /* Board descriptions */ struct pci6208_board {
drivers/staging/comedi/drivers/adl_pci7230.c +0 -1
@@ -36,7 +36,6 @@ Configuration Options:#include "../comedidev.h" #include <linux/kernel.h> -#include "comedi_pci.h" #define PCI7230_DI 0x00#define PCI7230_DO 0x00
drivers/staging/comedi/drivers/adl_pci7296.c +0 -1
@@ -37,7 +37,6 @@ Configuration Options:#include "../comedidev.h" #include <linux/kernel.h> -#include "comedi_pci.h" #include "8255.h" /* #include "8253.h" */
drivers/staging/comedi/drivers/adl_pci7432.c +0 -1
@@ -36,7 +36,6 @@ Configuration Options:#include "../comedidev.h" #include <linux/kernel.h> -#include "comedi_pci.h" #define PCI7432_DI 0x00#define PCI7432_DO 0x00
drivers/staging/comedi/drivers/adl_pci8164.c +0 -1
@@ -38,7 +38,6 @@ Configuration Options:#include <linux/kernel.h> #include <linux/delay.h> #include "comedi_fc.h" -#include "comedi_pci.h" #include "8253.h" #define PCI8164_AXIS_X 0x00
drivers/staging/comedi/drivers/adl_pci9111.c +0 -1
@@ -81,7 +81,6 @@ TODO:#include <linux/interrupt.h> #include "8253.h" -#include "comedi_pci.h" #include "comedi_fc.h" #define PCI9111_DRIVER_NAME "adl_pci9111"
drivers/staging/comedi/drivers/adl_pci9118.c +0 -1
@@ -71,7 +71,6 @@ Configuration options:#include "amcc_s5933.h" #include "8253.h" -#include "comedi_pci.h" #include "comedi_fc.h" #define PCI_VENDOR_ID_AMCC 0x10e8
drivers/staging/comedi/drivers/adv_pci1710.c +0 -2
@@ -45,8 +45,6 @@ Configuration options:#include "../comedidev.h" -#include "comedi_pci.h" -#include "8253.h" #include "amcc_s5933.h"
drivers/staging/comedi/drivers/adv_pci1723.c +0 -2
@@ -50,8 +50,6 @@ TODO:#include "../comedidev.h" -#include "comedi_pci.h" -#define PCI_VENDOR_ID_ADVANTECH 0x13fe/* Advantech PCI vendor ID */ /* hardware types of the cards */
drivers/staging/comedi/drivers/adv_pci_dio.c +0 -1
@@ -33,7 +33,6 @@ Configuration options:#include <linux/delay.h> -#include "comedi_pci.h" #include "8255.h" #include "8253.h"
drivers/staging/comedi/drivers/amplc_dio200.c +0 -2
@@ -210,8 +210,6 @@ order they appear in the channel list.#include "../comedidev.h" -#include "comedi_pci.h" -#include "8255.h" #include "8253.h"
drivers/staging/comedi/drivers/amplc_pc236.c +0 -2
@@ -56,8 +56,6 @@ unused.#include "../comedidev.h" -#include "comedi_pci.h" -#include "8255.h" #include "plx9052.h"
drivers/staging/comedi/drivers/amplc_pc263.c +0 -2
@@ -46,8 +46,6 @@ The state of the outputs can be read.#include "../comedidev.h" -#include "comedi_pci.h" -#define PC263_DRIVER_NAME "amplc_pc263"#ifdef CONFIG_COMEDI_AMPLC_PC263_ISA_MODULE
drivers/staging/comedi/drivers/amplc_pci224.c +0 -2
@@ -108,8 +108,6 @@ Caveats:#include "../comedidev.h" -#include "comedi_pci.h" -#include "comedi_fc.h" #include "8253.h"
drivers/staging/comedi/drivers/amplc_pci230.c +0 -1
@@ -193,7 +193,6 @@ for (or detection of) various hardware problems added by Ian Abbott.#include <linux/delay.h> #include <linux/interrupt.h> -#include "comedi_pci.h" #include "8253.h" #include "8255.h"
drivers/staging/comedi/drivers/cb_pcidas.c +0 -1
@@ -77,7 +77,6 @@ analog triggering on 1602 series#include "8253.h" #include "8255.h" #include "amcc_s5933.h" -#include "comedi_pci.h" #include "comedi_fc.h" #undef CB_PCIDAS_DEBUG/* disable debugging code */
drivers/staging/comedi/drivers/cb_pcidas64.c +0 -1
@@ -87,7 +87,6 @@ TODO:#include <linux/delay.h> #include <linux/interrupt.h> -#include "comedi_pci.h" #include "8253.h" #include "8255.h" #include "plx9080.h"
drivers/staging/comedi/drivers/cb_pcidda.c +0 -2
@@ -48,10 +48,8 @@ Please report success/failure with other different cards to#include "../comedidev.h" -#include "comedi_pci.h" #include "8255.h" -/* PCI vendor number of ComputerBoards */ #define PCI_VENDOR_ID_CB 0x1307#define EEPROM_SIZE 128/* number of entries in eeprom */
drivers/staging/comedi/drivers/cb_pcidio.c +0 -1
@@ -41,7 +41,6 @@ Passing a zero for an option is the same as leaving it unspecified./*------------------------------ HEADER FILES ---------------------------------*/ #include "../comedidev.h" -#include "comedi_pci.h" #include "8255.h" /*-------------------------- MACROS and DATATYPES -----------------------------*/
drivers/staging/comedi/drivers/cb_pcimdas.c +0 -1
@@ -45,7 +45,6 @@ See http://www.mccdaq.com/PDFs/Manuals/pcim-das1602-16.pdf for more details.#include <linux/delay.h> #include <linux/interrupt.h> -#include "comedi_pci.h" #include "plx9052.h" #include "8255.h"
drivers/staging/comedi/drivers/cb_pcimdda.c +0 -2
@@ -86,8 +86,6 @@ Configuration Options:#include "../comedidev.h" -#include "comedi_pci.h" -#include "8255.h" /* device ids of the cards we support -- currently only 1 card supported */
drivers/staging/comedi/drivers/comedi_pci.h deleted +0 -60
60 lines not on this page · raw message
drivers/staging/comedi/drivers/contec_pci_dio.c +0 -2
@@ -36,8 +36,6 @@ Configuration Options:#include "../comedidev.h" -#include "comedi_pci.h" -enum contec_model {PIO1616L =0 , };
drivers/staging/comedi/drivers/daqboard2000.c +0 -1
@@ -118,7 +118,6 @@ Configuration options:#include <linux/delay.h> #include <linux/interrupt.h> -#include "comedi_pci.h" #include "8255.h" #define DAQBOARD2000_SUBSYSTEM_IDS2 0x00021616/* Daqboard/2000 - 2 Dacs */
drivers/staging/comedi/drivers/das08.c +0 -1
@@ -55,7 +55,6 @@#include <linux/delay.h> -#include "comedi_pci.h" #include "8255.h" #include "das08.h"
drivers/staging/comedi/drivers/dt3000.c +0 -2
@@ -63,8 +63,6 @@ AO commands are not supported.#include "../comedidev.h" #include <linux/delay.h> -#include "comedi_pci.h" -#define PCI_VENDOR_ID_DT 0x1116static const struct comedi_lrange range_dt3000_ai = {4 , {
drivers/staging/comedi/drivers/dyna_pci10xx.c +0 -1
@@ -38,7 +38,6 @@*/ #include "../comedidev.h" -#include "comedi_pci.h" #include <linux/mutex.h> #define PCI_VENDOR_ID_DYNALOG 0x10b5
drivers/staging/comedi/drivers/gsc_hpdi.c +0 -1
@@ -49,7 +49,6 @@ support could be added to this driver.#include "../comedidev.h" #include <linux/delay.h> -#include "comedi_pci.h" #include "plx9080.h" #include "comedi_fc.h"
drivers/staging/comedi/drivers/icp_multi.h +0 -1
@@ -11,7 +11,6 @@#define _ICP_MULTI_H_#include "../comedidev.h" -#include "comedi_pci.h" /****************************************************************************/
drivers/staging/comedi/drivers/jr3_pci.c +0 -1
@@ -49,7 +49,6 @@ Devices: [JR3] PCI force sensor board (jr3_pci)#include <linux/slab.h> #include <linux/timer.h> #include <linux/kernel.h> -#include "comedi_pci.h" #include "jr3_pci.h" #define PCI_VENDOR_ID_JR3 0x1762
drivers/staging/comedi/drivers/ke_counter.c +0 -2
@@ -40,8 +40,6 @@ Kolter Electronic PCI Counter Card.#include "../comedidev.h" -#include "comedi_pci.h" -#define CNT_DRIVER_NAME "ke_counter"#define PCI_VENDOR_ID_KOLTER 0x1001#define CNT_CARD_DEVICE_ID 0x0014
drivers/staging/comedi/drivers/me4000.c +0 -1
@@ -58,7 +58,6 @@ broken.#include <linux/list.h> #include <linux/spinlock.h> -#include "comedi_pci.h" #include "me4000.h" #if 0 /* file removed due to GPL incompatibility */
drivers/staging/comedi/drivers/me_daq.c +0 -2
@@ -54,8 +54,6 @@ from http://www.comedi.org#include <linux/sched.h> #include "../comedidev.h" -#include "comedi_pci.h" -/*#include "me2600_fw.h" */ #define ME_DRIVER_NAME "me_daq"
drivers/staging/comedi/drivers/mite.c +0 -1
@@ -52,7 +52,6 @@#include "mite.h" #include "comedi_fc.h" -#include "comedi_pci.h" #include "../comedidev.h"
drivers/staging/comedi/drivers/rtd520.c +0 -1
@@ -105,7 +105,6 @@ Configuration options:#include <linux/delay.h> #include "../comedidev.h" -#include "comedi_pci.h" #define DRV_NAME "rtd520"
drivers/staging/comedi/drivers/s626.c +0 -2
@@ -74,8 +74,6 @@ INSN_CONFIG instructions:#include "../comedidev.h" -#include "comedi_pci.h" -#include "comedi_fc.h" #include "s626.h"
Quoted 7 lines · H Hartley Sweeten
Remove the private header,
comedi_pci.h, by moving the two helper functions intodivers.cand providing the prototypes incomedidev.h.This allows the comedi_pci_enable/disable helper functions to be shared instead of having an inline version in every comedi pci driver.
I'm wondering if these functions should be EXPORT_SYMBOL() or EXPORT_SYMBOL_GPL() since they were originally inline functions.
Opinions?
Signature · 2 lines
-=( Ian Abbott @ MEV Ltd. E-mail: <[email protected]> )=- -=( Tel: +44 (0)161 477 1898 FAX: +44 (0)161 718 3587 )=-
[email protected]
maintainerQuoted 5 lines · Ian Abbott
Quoted 4 lines · H Hartley Sweeten
Remove the private header,
comedi_pci.h, by moving the two helper functions intodivers.cand providing the prototypes incomedidev.h.
Quoted 8 lines
Quoted 3 lines
This allows the comedi_pci_enable/disable helper functions to be shared instead of having an inline version in every comedi pci driver.
I'm wondering if these functions should be
EXPORT_SYMBOL()orEXPORT_SYMBOL_GPL()since they were originally inline functions.Opinions?
Are there any known out-of-tree comedi drivers? I say leave this as-is and see if anyone complains :)
thanks,
greg k-h