staging: comedi: conditionally build in PCI driver support
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Wed, 30 Jan 2013 22:22:21 +0000 (15:22 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 31 Jan 2013 09:38:10 +0000 (10:38 +0100)
Separate the comedi_pci_* functions out of drivers.c into a new
source file, comedi_pci.c. This allows conditionally building
support for comedi PCI drivers into the comedi core. Fix the
Kconfig and Makefile appropriately.

Group all the comedi_pci_* prototypes and related defines into one
place in comedidev.h. Protect these prototypes with an #ifdef and
provide some dummy functions so that the mixed ISA/PCI comedi
drivers will still build correctly.

Remove the #include <linux/pci.h> from comedidev.h and drivers.c. This
include is only needed by the comedi PCI driver support code and the
PCI drivers. The include should occur in those files.

Also, remove the #include <linux/pci.h> from a couple non-PCI drivers
since it's not needed.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
64 files changed:
drivers/staging/comedi/Kconfig
drivers/staging/comedi/Makefile
drivers/staging/comedi/comedi_pci.c [new file with mode: 0644]
drivers/staging/comedi/comedidev.h
drivers/staging/comedi/drivers.c
drivers/staging/comedi/drivers/8255_pci.c
drivers/staging/comedi/drivers/addi_apci_035.c
drivers/staging/comedi/drivers/addi_apci_1032.c
drivers/staging/comedi/drivers/addi_apci_1500.c
drivers/staging/comedi/drivers/addi_apci_1516.c
drivers/staging/comedi/drivers/addi_apci_1564.c
drivers/staging/comedi/drivers/addi_apci_16xx.c
drivers/staging/comedi/drivers/addi_apci_1710.c
drivers/staging/comedi/drivers/addi_apci_2032.c
drivers/staging/comedi/drivers/addi_apci_2200.c
drivers/staging/comedi/drivers/addi_apci_3120.c
drivers/staging/comedi/drivers/addi_apci_3200.c
drivers/staging/comedi/drivers/addi_apci_3501.c
drivers/staging/comedi/drivers/addi_apci_3xxx.c
drivers/staging/comedi/drivers/adl_pci6208.c
drivers/staging/comedi/drivers/adl_pci7x3x.c
drivers/staging/comedi/drivers/adl_pci8164.c
drivers/staging/comedi/drivers/adl_pci9111.c
drivers/staging/comedi/drivers/adl_pci9118.c
drivers/staging/comedi/drivers/adv_pci1710.c
drivers/staging/comedi/drivers/adv_pci1723.c
drivers/staging/comedi/drivers/adv_pci_dio.c
drivers/staging/comedi/drivers/amplc_dio200.c
drivers/staging/comedi/drivers/amplc_pc236.c
drivers/staging/comedi/drivers/amplc_pc263.c
drivers/staging/comedi/drivers/amplc_pci224.c
drivers/staging/comedi/drivers/amplc_pci230.c
drivers/staging/comedi/drivers/cb_pcidas.c
drivers/staging/comedi/drivers/cb_pcidas64.c
drivers/staging/comedi/drivers/cb_pcidda.c
drivers/staging/comedi/drivers/cb_pcimdas.c
drivers/staging/comedi/drivers/cb_pcimdda.c
drivers/staging/comedi/drivers/contec_pci_dio.c
drivers/staging/comedi/drivers/daqboard2000.c
drivers/staging/comedi/drivers/das08.c
drivers/staging/comedi/drivers/das08_cs.c
drivers/staging/comedi/drivers/das16.c
drivers/staging/comedi/drivers/dt3000.c
drivers/staging/comedi/drivers/dyna_pci10xx.c
drivers/staging/comedi/drivers/gsc_hpdi.c
drivers/staging/comedi/drivers/icp_multi.c
drivers/staging/comedi/drivers/jr3_pci.c
drivers/staging/comedi/drivers/ke_counter.c
drivers/staging/comedi/drivers/me4000.c
drivers/staging/comedi/drivers/me_daq.c
drivers/staging/comedi/drivers/mite.c
drivers/staging/comedi/drivers/ni_6527.c
drivers/staging/comedi/drivers/ni_65xx.c
drivers/staging/comedi/drivers/ni_660x.c
drivers/staging/comedi/drivers/ni_670x.c
drivers/staging/comedi/drivers/ni_labpc.c
drivers/staging/comedi/drivers/ni_pcidio.c
drivers/staging/comedi/drivers/ni_pcimio.c
drivers/staging/comedi/drivers/pcmda12.c
drivers/staging/comedi/drivers/pcmmio.c
drivers/staging/comedi/drivers/pcmuio.c
drivers/staging/comedi/drivers/rtd520.c
drivers/staging/comedi/drivers/s626.c
drivers/staging/comedi/drivers/skel.c

index e0aa246d994836110d5a5059330a414e2973d271..9cc16b596e42ecfa5b422aa9e0a8424c8af8403b 100644 (file)
@@ -542,11 +542,7 @@ menuconfig COMEDI_PCI_DRIVERS
        bool "Comedi PCI drivers"
        depends on PCI
        ---help---
-         Enable comedi PCI drivers to be built
-
-         Note that the answer to this question won't directly affect the
-         kernel: saying N will just cause the configurator to skip all
-         the questions about PCI comedi drivers.
+         Enable support for comedi PCI drivers.
 
 if COMEDI_PCI_DRIVERS
 
index 872a87b9642e583187640dad545259d9a7255565..5372cb1adb5c03d67d560ba8eb3cc8174547d794 100644 (file)
@@ -1,5 +1,6 @@
 comedi-y                               := comedi_fops.o range.o drivers.o \
                                           comedi_buf.o
+comedi-$(CONFIG_COMEDI_PCI_DRIVERS)    += comedi_pci.o
 comedi-$(CONFIG_COMEDI_USB_DRIVERS)    += comedi_usb.o
 comedi-$(CONFIG_PROC_FS)               += proc.o
 comedi-$(CONFIG_COMPAT)                        += comedi_compat32.o
diff --git a/drivers/staging/comedi/comedi_pci.c b/drivers/staging/comedi/comedi_pci.c
new file mode 100644 (file)
index 0000000..37d2e46
--- /dev/null
@@ -0,0 +1,140 @@
+/*
+ * comedi_pci.c
+ * Comedi PCI driver specific functions.
+ *
+ * COMEDI - Linux Control and Measurement Device Interface
+ * Copyright (C) 1997-2000 David A. Schleef <ds@schleef.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#include <linux/pci.h>
+
+#include "comedidev.h"
+
+/**
+ * comedi_to_pci_dev() - comedi_device pointer to pci_dev pointer.
+ * @dev: comedi_device struct
+ */
+struct pci_dev *comedi_to_pci_dev(struct comedi_device *dev)
+{
+       return dev->hw_dev ? to_pci_dev(dev->hw_dev) : NULL;
+}
+EXPORT_SYMBOL_GPL(comedi_to_pci_dev);
+
+/**
+ * comedi_pci_enable() - Enable the PCI device and request the regions.
+ * @pcidev: pci_dev struct
+ * @res_name: name for the requested reqource
+ */
+int comedi_pci_enable(struct pci_dev *pcidev, const char *res_name)
+{
+       int rc;
+
+       rc = pci_enable_device(pcidev);
+       if (rc < 0)
+               return rc;
+
+       rc = pci_request_regions(pcidev, res_name);
+       if (rc < 0)
+               pci_disable_device(pcidev);
+
+       return rc;
+}
+EXPORT_SYMBOL_GPL(comedi_pci_enable);
+
+/**
+ * comedi_pci_disable() - Release the regions and disable the PCI device.
+ * @pcidev: pci_dev struct
+ *
+ * This must be matched with a previous successful call to comedi_pci_enable().
+ */
+void comedi_pci_disable(struct pci_dev *pcidev)
+{
+       pci_release_regions(pcidev);
+       pci_disable_device(pcidev);
+}
+EXPORT_SYMBOL_GPL(comedi_pci_disable);
+
+/**
+ * comedi_pci_auto_config() - Configure/probe a comedi PCI driver.
+ * @pcidev: pci_dev struct
+ * @driver: comedi_driver struct
+ *
+ * Typically called from the pci_driver (*probe) function.
+ */
+int comedi_pci_auto_config(struct pci_dev *pcidev,
+                          struct comedi_driver *driver)
+{
+       return comedi_auto_config(&pcidev->dev, driver, 0);
+}
+EXPORT_SYMBOL_GPL(comedi_pci_auto_config);
+
+/**
+ * comedi_pci_auto_unconfig() - Unconfigure/remove a comedi PCI driver.
+ * @pcidev: pci_dev struct
+ *
+ * Typically called from the pci_driver (*remove) function.
+ */
+void comedi_pci_auto_unconfig(struct pci_dev *pcidev)
+{
+       comedi_auto_unconfig(&pcidev->dev);
+}
+EXPORT_SYMBOL_GPL(comedi_pci_auto_unconfig);
+
+/**
+ * comedi_pci_driver_register() - Register a comedi PCI driver.
+ * @comedi_driver: comedi_driver struct
+ * @pci_driver: pci_driver struct
+ *
+ * This function is used for the module_init() of comedi PCI drivers.
+ * Do not call it directly, use the module_comedi_pci_driver() helper
+ * macro instead.
+ */
+int comedi_pci_driver_register(struct comedi_driver *comedi_driver,
+                              struct pci_driver *pci_driver)
+{
+       int ret;
+
+       ret = comedi_driver_register(comedi_driver);
+       if (ret < 0)
+               return ret;
+
+       ret = pci_register_driver(pci_driver);
+       if (ret < 0) {
+               comedi_driver_unregister(comedi_driver);
+               return ret;
+       }
+
+       return 0;
+}
+EXPORT_SYMBOL_GPL(comedi_pci_driver_register);
+
+/**
+ * comedi_pci_driver_unregister() - Unregister a comedi PCI driver.
+ * @comedi_driver: comedi_driver struct
+ * @pci_driver: pci_driver struct
+ *
+ * This function is used for the module_exit() of comedi PCI drivers.
+ * Do not call it directly, use the module_comedi_pci_driver() helper
+ * macro instead.
+ */
+void comedi_pci_driver_unregister(struct comedi_driver *comedi_driver,
+                                 struct pci_driver *pci_driver)
+{
+       pci_unregister_driver(pci_driver);
+       comedi_driver_unregister(comedi_driver);
+}
+EXPORT_SYMBOL_GPL(comedi_pci_driver_unregister);
index 4fe29d5458d48a409ef5c7cb9f5fed50d8f6b5fb..666caded363bc983a50908225a04df95f5faa984 100644 (file)
@@ -40,7 +40,6 @@
 #include <linux/uaccess.h>
 #include <linux/io.h>
 #include <linux/timer.h>
-#include <linux/pci.h>
 
 #include "comedi.h"
 
        COMEDI_MINORVERSION, COMEDI_MICROVERSION)
 #define COMEDI_RELEASE VERSION
 
-/*
- * PCI Vendor IDs not in <linux/pci_ids.h>
- */
-#define PCI_VENDOR_ID_KOLTER           0x1001
-#define PCI_VENDOR_ID_ICP              0x104c
-#define PCI_VENDOR_ID_AMCC             0x10e8
-#define PCI_VENDOR_ID_DT               0x1116
-#define PCI_VENDOR_ID_IOTECH           0x1616
-#define PCI_VENDOR_ID_CONTEC           0x1221
-#define PCI_VENDOR_ID_CB               0x1307  /* Measurement Computing */
-#define PCI_VENDOR_ID_ADVANTECH                0x13fe
-#define PCI_VENDOR_ID_MEILHAUS         0x1402
-#define PCI_VENDOR_ID_RTD              0x1435
-#define PCI_VENDOR_ID_ADLINK           0x144a
-#define PCI_VENDOR_ID_AMPLICON         0x14dc
-
 #define COMEDI_NUM_MINORS 0x100
 #define COMEDI_NUM_BOARD_MINORS 0x30
 #define COMEDI_FIRST_SUBDEVICE_MINOR COMEDI_NUM_BOARD_MINORS
@@ -295,26 +278,6 @@ int comedi_driver_unregister(struct comedi_driver *);
        module_driver(__comedi_driver, comedi_driver_register, \
                        comedi_driver_unregister)
 
-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 *);
-
-/**
- * module_comedi_pci_driver() - Helper macro for registering a comedi PCI driver
- * @__comedi_driver: comedi_driver struct
- * @__pci_driver: pci_driver struct
- *
- * Helper macro for comedi PCI drivers which do not do anything special
- * in module init/exit. This eliminates a lot of boilerplate. Each
- * module may only use this macro once, and calling it replaces
- * module_init() and module_exit()
- */
-#define module_comedi_pci_driver(__comedi_driver, __pci_driver) \
-       module_driver(__comedi_driver, comedi_pci_driver_register, \
-                       comedi_pci_driver_unregister, &(__pci_driver))
-
 struct pcmcia_driver;
 
 int comedi_pcmcia_driver_register(struct comedi_driver *,
@@ -424,11 +387,6 @@ static inline void comedi_set_hw_dev(struct comedi_device *dev,
        put_device(old_hw_dev);
 }
 
-static inline struct pci_dev *comedi_to_pci_dev(struct comedi_device *dev)
-{
-       return dev->hw_dev ? to_pci_dev(dev->hw_dev) : NULL;
-}
-
 unsigned int comedi_buf_write_alloc(struct comedi_async *, unsigned int);
 unsigned int comedi_buf_write_free(struct comedi_async *, unsigned int);
 
@@ -451,13 +409,77 @@ int comedi_auto_config(struct device *hardware_device,
                       struct comedi_driver *driver, unsigned long context);
 void comedi_auto_unconfig(struct device *hardware_device);
 
-static inline int comedi_pci_auto_config(struct pci_dev *pcidev,
-                                        struct comedi_driver *driver)
+#ifdef CONFIG_COMEDI_PCI_DRIVERS
+
+/* comedi_pci.c - comedi PCI driver specific functions */
+
+/*
+ * PCI Vendor IDs not in <linux/pci_ids.h>
+ */
+#define PCI_VENDOR_ID_KOLTER           0x1001
+#define PCI_VENDOR_ID_ICP              0x104c
+#define PCI_VENDOR_ID_AMCC             0x10e8
+#define PCI_VENDOR_ID_DT               0x1116
+#define PCI_VENDOR_ID_IOTECH           0x1616
+#define PCI_VENDOR_ID_CONTEC           0x1221
+#define PCI_VENDOR_ID_CB               0x1307  /* Measurement Computing */
+#define PCI_VENDOR_ID_ADVANTECH                0x13fe
+#define PCI_VENDOR_ID_MEILHAUS         0x1402
+#define PCI_VENDOR_ID_RTD              0x1435
+#define PCI_VENDOR_ID_ADLINK           0x144a
+#define PCI_VENDOR_ID_AMPLICON         0x14dc
+
+struct pci_dev;
+struct pci_driver;
+
+struct pci_dev *comedi_to_pci_dev(struct comedi_device *);
+
+int comedi_pci_enable(struct pci_dev *, const char *);
+void comedi_pci_disable(struct pci_dev *);
+
+int comedi_pci_auto_config(struct pci_dev *, struct comedi_driver *);
+void comedi_pci_auto_unconfig(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 *);
+
+/**
+ * module_comedi_pci_driver() - Helper macro for registering a comedi PCI driver
+ * @__comedi_driver: comedi_driver struct
+ * @__pci_driver: pci_driver struct
+ *
+ * Helper macro for comedi PCI drivers which do not do anything special
+ * in module init/exit. This eliminates a lot of boilerplate. Each
+ * module may only use this macro once, and calling it replaces
+ * module_init() and module_exit()
+ */
+#define module_comedi_pci_driver(__comedi_driver, __pci_driver) \
+       module_driver(__comedi_driver, comedi_pci_driver_register, \
+                       comedi_pci_driver_unregister, &(__pci_driver))
+
+#else
+
+/*
+ * Some of the comedi mixed ISA/PCI drivers call the PCI specific
+ * functions. Provide some dummy functions if CONFIG_COMEDI_PCI_DRIVERS
+ * is not enabled.
+ */
+
+static inline struct pci_dev *comedi_to_pci_dev(struct comedi_device *dev)
+{
+       return NULL;
+}
+
+static inline int comedi_pci_enable(struct pci_dev *dev, const char *name)
+{
+       return -ENOSYS;
+}
+
+static inline void comedi_pci_disable(struct pci_dev *dev)
 {
-       return comedi_auto_config(&pcidev->dev, driver, 0);
 }
 
-void comedi_pci_auto_unconfig(struct pci_dev *pcidev);
+#endif /* CONFIG_COMEDI_PCI_DRIVERS */
 
 #ifdef CONFIG_COMEDI_USB_DRIVERS
 
index 86fcd3698216a9a10272651180120309bcac899d..4e6e8a1700f57057e3b0006b5548ffaca5137de1 100644 (file)
@@ -23,7 +23,6 @@
 
 #include <linux/device.h>
 #include <linux/module.h>
-#include <linux/pci.h>
 #include <pcmcia/cistpl.h>
 #include <pcmcia/ds.h>
 #include <linux/errno.h>
@@ -496,73 +495,6 @@ void comedi_auto_unconfig(struct device *hardware_device)
 }
 EXPORT_SYMBOL_GPL(comedi_auto_unconfig);
 
-/**
- * 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);
-
-int comedi_pci_driver_register(struct comedi_driver *comedi_driver,
-               struct pci_driver *pci_driver)
-{
-       int ret;
-
-       ret = comedi_driver_register(comedi_driver);
-       if (ret < 0)
-               return ret;
-
-       ret = pci_register_driver(pci_driver);
-       if (ret < 0) {
-               comedi_driver_unregister(comedi_driver);
-               return ret;
-       }
-
-       return 0;
-}
-EXPORT_SYMBOL_GPL(comedi_pci_driver_register);
-
-void comedi_pci_driver_unregister(struct comedi_driver *comedi_driver,
-               struct pci_driver *pci_driver)
-{
-       pci_unregister_driver(pci_driver);
-       comedi_driver_unregister(comedi_driver);
-}
-EXPORT_SYMBOL_GPL(comedi_pci_driver_unregister);
-
-void comedi_pci_auto_unconfig(struct pci_dev *pcidev)
-{
-       comedi_auto_unconfig(&pcidev->dev);
-}
-EXPORT_SYMBOL_GPL(comedi_pci_auto_unconfig);
-
 #if IS_ENABLED(CONFIG_PCMCIA)
 int comedi_pcmcia_driver_register(struct comedi_driver *comedi_driver,
                struct pcmcia_driver *pcmcia_driver)
index 87fe96da971d4f9184ea6516c1ed70bdf9bf99a2..0ae356ae56ea3b3937e1ee3599063b2790c2460c 100644 (file)
@@ -54,6 +54,8 @@ Interrupt support for these boards is also not currently supported.
 Configuration Options: not applicable, uses PCI auto config
 */
 
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 
 #include "8255.h"
index d69d6ec78361cf5d5da62589f07b3f0994f78813..5a53e58258a08616aafc1962aa9519f22be06752 100644 (file)
@@ -1,3 +1,5 @@
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 #include "comedi_fc.h"
 #include "amcc_s5933.h"
index d6c7ba6cd622d388da78b9575f38592471bf4162..c0d0429c35c8faac7e8b1a9616dac49a8554cf80 100644 (file)
@@ -29,6 +29,7 @@
  * source code.
  */
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
 
 #include "../comedidev.h"
index 1ac40629012c8f783ceeadd011809c59313d2856..9c2f8eeb7977b1e62628a7e1058b14507a5df9d2 100644 (file)
@@ -1,3 +1,5 @@
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 #include "comedi_fc.h"
 #include "amcc_s5933.h"
index 1721ba7f4e5396b4ab62688bb9105721899310e4..69e3996384196669bc5c057e51f3dd1ad87544c8 100644 (file)
@@ -29,6 +29,8 @@
  * this source code.
  */
 
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 #include "addi_watchdog.h"
 #include "comedi_fc.h"
index 3556c61551b9456794c5446753eb5cf05b1982cd..ddea64df9180cc6934de9303f91bc24843d64925 100644 (file)
@@ -1,3 +1,5 @@
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 #include "comedi_fc.h"
 #include "amcc_s5933.h"
index 8b88503deccae4341a3a56b8ec19904475fcc598..e51f80001363dff438adaae4d0c9262f0cb50e11 100644 (file)
@@ -29,6 +29,8 @@
  * this source code.
  */
 
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 
 /*
index 7eb03b1839157cf235b3bced5be758679cebf646..e83e829831b006316fab913db848c9199f4f9c04 100644 (file)
@@ -1,3 +1,5 @@
+#include <linux/pci.h>
+
 #include <asm/i387.h>
 
 #include "../comedidev.h"
index 15b080e737cf9228acdb1e9504c31f72e6cd67df..9ce1d26aff2fd67fabc147862c57e47f568a2469 100644 (file)
@@ -29,6 +29,7 @@
  * this source code.
  */
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
 
 #include "../comedidev.h"
index a9891b4e60e61edfa07740c2b4f4dbdac20607a7..b1c4226902e14c4376ae467b83982a67d1b4086a 100644 (file)
@@ -29,6 +29,8 @@
  * this source code.
  */
 
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 #include "addi_watchdog.h"
 
index 8cad18f7fc4913c62adc5d75ece74c3c0b16aafe..917234d24e9929c7c9c055cf896288d770152111 100644 (file)
@@ -1,3 +1,5 @@
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 #include "comedi_fc.h"
 #include "amcc_s5933.h"
index c11bf4bda4262cd9c767c46c6cb333e281eed1c4..90ee4f844f914a2884520ca209b174bf4a886054 100644 (file)
@@ -1,3 +1,5 @@
+#include <linux/pci.h>
+
 #include <asm/i387.h>
 
 #include "../comedidev.h"
index 55127319bdfff2b8a5928f0a50cf56edffe9caae..786fcaf82c324ef428e5721ce34348df9885b22f 100644 (file)
@@ -29,6 +29,7 @@
  * this source code.
  */
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
 #include <linux/sched.h>
 
index 69f5bf4d52e06548fda049f3bd55f19d04342c18..09d4b21fce23703f034be264404cfa1f8ca583ec 100644 (file)
@@ -1,3 +1,5 @@
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 #include "comedi_fc.h"
 #include "amcc_s5933.h"
index 41df0105e824d13b4ebdfd6d8ac4a613403dc14a..7b3e331616ed13866cb7f3af5a7573fcf156369a 100644 (file)
@@ -42,6 +42,8 @@ References:
        - adl_pci9118.c
 */
 
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 
 /*
index 2a8bc9804961651356ea794f20fa7deee6563318..539b1d8e52352cbe2f22fba986893ec780ea2f74 100644 (file)
@@ -54,6 +54,8 @@ driver.
 Configuration Options: not applicable
 */
 
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 
 /*
index ece84dd3aa6c9aa25579f8bb870797ed0e77f896..d06b83f38653ba3a981559c98977be386acc027b 100644 (file)
@@ -30,9 +30,11 @@ Updated: Mon, 14 Apr 2008 15:10:32 +0100
 Configuration Options: not applicable, uses PCI auto config
 */
 
-#include "../comedidev.h"
 #include <linux/kernel.h>
+#include <linux/pci.h>
 #include <linux/delay.h>
+
+#include "../comedidev.h"
 #include "comedi_fc.h"
 #include "8253.h"
 
index 1a31e910fcbd23e6046da83c9fbb5d57887bc8e7..eeb10ec7f178ed02728bc3f75403cb17dfe59829 100644 (file)
@@ -68,11 +68,12 @@ TODO:
 
 */
 
-#include "../comedidev.h"
-
+#include <linux/pci.h>
 #include <linux/delay.h>
 #include <linux/interrupt.h>
 
+#include "../comedidev.h"
+
 #include "8253.h"
 #include "comedi_fc.h"
 
index d21dfe65ba856acfa1c3a97f4832992d3d1a77fa..ef4dbe5ff0b8bb51d538959db93c3e0383d931cb 100644 (file)
@@ -76,13 +76,15 @@ Configuration options:
  * attachment if necessary, and possibly to set other options supported by
  * manual attachment.
  */
-#include "../comedidev.h"
 
+#include <linux/pci.h>
 #include <linux/delay.h>
 #include <linux/gfp.h>
 #include <linux/interrupt.h>
 #include <linux/io.h>
 
+#include "../comedidev.h"
+
 #include "amcc_s5933.h"
 #include "8253.h"
 #include "comedi_fc.h"
index d232d0c60a922d3547cdf7d8305a359348b251ce..3d788c76d6484964af503e9e96788c1b8590efc9 100644 (file)
@@ -41,6 +41,7 @@ Configuration options:
        device will be used.
 */
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
 
 #include "../comedidev.h"
index 1be8902f8231c03b0385d2095d82c2ba93b80d85..02ce55a01d2a502b52fde17464fa682f79920303 100644 (file)
@@ -48,6 +48,8 @@ TODO:
 3. Implement calibration.
 */
 
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 
 /* all the registers for the pci1723 board */
index 35887e40ef0c5d121c18dceefbdc47181494eeb7..338c43e716bae1fc7d504b7e86ee598974e9e11d 100644 (file)
@@ -29,10 +29,11 @@ Configuration options:
 
 */
 
-#include "../comedidev.h"
-
+#include <linux/pci.h>
 #include <linux/delay.h>
 
+#include "../comedidev.h"
+
 #include "8255.h"
 #include "8253.h"
 
index 1fadf5d0ad26d860bad4fa3e0a236b9616438cce..b30d1a05c33cd3d07e9a9593d87fc805743e72a7 100644 (file)
  * order they appear in the channel list.
  */
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
 #include <linux/slab.h>
 
index 5011016a947ea48f0746ed127df0680df04b2278..479e10fddd22e128115f1a5afdf24126c40cbb34 100644 (file)
@@ -52,6 +52,7 @@ the IRQ jumper.  If no interrupt is connected, then subdevice 1 is
 unused.
 */
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
 
 #include "../comedidev.h"
index c34bb009b710630bd376f69a9e5cbe6d54f17e32..11c1f4764eacde047a9241755583541675a18575 100644 (file)
@@ -44,6 +44,8 @@ connected to a reed-relay. Relay contacts are closed when output is 1.
 The state of the outputs can be read.
 */
 
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 
 #define PC263_DRIVER_NAME      "amplc_pc263"
index 24794f4c565f2b4335553f7976ee942fb7c7cfff..c9da4cd74baac16aaec58d6213851157ec9f51e1 100644 (file)
@@ -103,6 +103,7 @@ Caveats:
      correctly.
 */
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
 #include <linux/slab.h>
 
index 2440596a3ec4f950b184ccb250037ed3ae73ad77..e2244c6e536bc27a65d95016f11da3411a576d57 100644 (file)
@@ -188,11 +188,12 @@ Support for PCI230+/260+, more triggered scan functionality, and workarounds
 for (or detection of) various hardware problems added by Ian Abbott.
 */
 
-#include "../comedidev.h"
-
+#include <linux/pci.h>
 #include <linux/delay.h>
 #include <linux/interrupt.h>
 
+#include "../comedidev.h"
+
 #include "comedi_fc.h"
 #include "8253.h"
 #include "8255.h"
index 0fd6fcf0cefea39ffec1c2a22004b62e706d52fd..79c72118a090bee6f9c96441eb204792e1f40bd0 100644 (file)
@@ -67,10 +67,12 @@ TODO:
 analog triggering on 1602 series
 */
 
-#include "../comedidev.h"
+#include <linux/pci.h>
 #include <linux/delay.h>
 #include <linux/interrupt.h>
 
+#include "../comedidev.h"
+
 #include "8253.h"
 #include "8255.h"
 #include "amcc_s5933.h"
index e7d297708a5b00a6b3c02f63a43fe858caf56cac..d33fc327236f76e19e6ddb831987cf7d620a2b7a 100644 (file)
@@ -87,10 +87,12 @@ TODO:
 
 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
 
-#include "../comedidev.h"
+#include <linux/pci.h>
 #include <linux/delay.h>
 #include <linux/interrupt.h>
 
+#include "../comedidev.h"
+
 #include "8253.h"
 #include "8255.h"
 #include "plx9080.h"
index 04be8c62d79d82114fce528391b150e205256fe6..e2cadc728455def81c67ed5cbf717d04d85ae29d 100644 (file)
@@ -41,6 +41,8 @@
  * Only simple analog output writing is supported.
  */
 
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 
 #include "comedi_fc.h"
index 709c5c670f40df1df93bd20c1e45d331345b4c6d..aae063ca85a0d6e93c7489a4e48ff91dc4a6a865 100644 (file)
@@ -40,11 +40,12 @@ No interrupts, multi channel or FIFO AI, although the card looks like it could s
 See http://www.mccdaq.com/PDFs/Manuals/pcim-das1602-16.pdf for more details.
 */
 
-#include "../comedidev.h"
-
+#include <linux/pci.h>
 #include <linux/delay.h>
 #include <linux/interrupt.h>
 
+#include "../comedidev.h"
+
 #include "plx9052.h"
 #include "8255.h"
 
index 74aa4e062596a88fde9459978b239e0100ea534a..63cfbaf3a3fe7086992776f3ddb4c83060dc4fae 100644 (file)
@@ -79,6 +79,8 @@ Configuration Options: not applicable, uses PCI auto config
     -Calin Culianu <calin@ajvar.org>
  */
 
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 
 #include "8255.h"
index e0273c445af64082cb906ef721628cb8596c3bd9..182dea669ef2a9e15ab394cd4628577410bf60c7 100644 (file)
@@ -30,6 +30,8 @@ Status: works
 Configuration Options: not applicable, uses comedi PCI auto config
 */
 
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 
 #define PCI_DEVICE_ID_PIO1616L 0x8172
index d1fc190313c56f17392bdfa1821aa65aa2065b8f..50b450f09c65af41008f4dd2485cada668371010 100644 (file)
@@ -107,12 +107,13 @@ Configuration options: not applicable, uses PCI auto config
 
  */
 
-#include "../comedidev.h"
-
+#include <linux/pci.h>
 #include <linux/delay.h>
 #include <linux/interrupt.h>
 #include <linux/firmware.h>
 
+#include "../comedidev.h"
+
 #include "8255.h"
 
 #define DAQBOARD2000_FIRMWARE          "daqboard2000_firmware.bin"
index 37f03c2b766dfae8f697960c5b5480a272a6e3ef..45a937e959103469271d5e46f1cba18dbc893c36 100644 (file)
  * driver.
  */
 
-#include "../comedidev.h"
-
+#include <linux/pci.h>
 #include <linux/delay.h>
 
+#include "../comedidev.h"
+
 #include "8255.h"
 #include "8253.h"
 #include "das08.h"
index 73a2418933f7e6027badd3731161ea2c9af93b54..ff67348be77d8db73caa777954b4fa6a993eb66d 100644 (file)
@@ -46,12 +46,11 @@ Options (for pcm-das08):
 Command support does not exist, but could be added for this board.
 */
 
-#include "../comedidev.h"
-
 #include <linux/delay.h>
-#include <linux/pci.h>
 #include <linux/slab.h>
 
+#include "../comedidev.h"
+
 #include "das08.h"
 
 /* pcmcia includes */
index b159f44d694f886aea096d2f49473427528e3446..f238a1fbccbf7ac246e2e8e441846ae88cf5a846 100644 (file)
@@ -82,7 +82,9 @@ www.measurementcomputing.com
 #include <linux/pci.h>
 #include <linux/slab.h>
 #include <linux/interrupt.h>
+
 #include <asm/dma.h>
+
 #include "../comedidev.h"
 
 #include "8253.h"
index 1fabe8870cd08cb400749b05b9262962ef5b680e..3ce499fa5dbf775d8962e29efdd3e4bc9e5f5dc2 100644 (file)
@@ -55,9 +55,11 @@ AO commands are not supported.
 
 #define DEBUG 1
 
+#include <linux/pci.h>
+#include <linux/delay.h>
 #include <linux/interrupt.h>
+
 #include "../comedidev.h"
-#include <linux/delay.h>
 
 #include "comedi_fc.h"
 
index 5aa695e8465034bdb5a8828495fde6df589ed0ac..decc17f1867e495fe254f4c24b7c06e76a6314fe 100644 (file)
  their cards in their manuals.
 */
 
-#include "../comedidev.h"
+#include <linux/pci.h>
 #include <linux/mutex.h>
 
+#include "../comedidev.h"
+
 #define READ_TIMEOUT 50
 
 static const struct comedi_lrange range_pci1050_ai = { 3, {
index 6d88b72fd4727efd032bd5a3d3038fd6595b871a..b60c975626760d97a1cb5cd0bdace78f47ed63e7 100644 (file)
 
 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
 
+#include <linux/pci.h>
+#include <linux/delay.h>
 #include <linux/interrupt.h>
+
 #include "../comedidev.h"
-#include <linux/delay.h>
 
 #include "plx9080.h"
 #include "comedi_fc.h"
index 017429539bd4f2978962b9b8df78db3575aed537..1e08f9141fadd09980f51d0f6b7e7aac533cb973 100644 (file)
@@ -47,11 +47,11 @@ There are 4 x 12-bit Analogue Outputs.  Ranges : 5V, 10V, +/-5V, +/-10V
 Configuration options: not applicable, uses PCI auto config
 */
 
+#include <linux/pci.h>
+#include <linux/delay.h>
 #include <linux/interrupt.h>
-#include "../comedidev.h"
 
-#include <linux/delay.h>
-#include <linux/pci.h>
+#include "../comedidev.h"
 
 #define PCI_DEVICE_ID_ICP_MULTI        0x8000
 
index 8d79c761509b688f40f8cbb2f7b080ce7221dd7b..17ba75e0ab89260cdc9545843452a915b1579e85 100644 (file)
  * comedi_nonfree_firmware tarball.  The file is called "jr3pci.idm".
  */
 
-#include "../comedidev.h"
-
+#include <linux/kernel.h>
+#include <linux/pci.h>
 #include <linux/delay.h>
 #include <linux/ctype.h>
 #include <linux/firmware.h>
 #include <linux/jiffies.h>
 #include <linux/slab.h>
 #include <linux/timer.h>
-#include <linux/kernel.h>
+
+#include "../comedidev.h"
+
 #include "jr3_pci.h"
 
 #define PCI_VENDOR_ID_JR3 0x1762
index 535800a369018241c171afc7ad5bc583938f6a21..8c09c026508a228930576e58e3eeba4de9ba5d69 100644 (file)
@@ -34,6 +34,8 @@ This driver is a simple driver to read the counter values from
 Kolter Electronic PCI Counter Card.
 */
 
+#include <linux/pci.h>
+
 #include "../comedidev.h"
 
 #define CNT_CARD_DEVICE_ID      0x0014
index 4312b3707d16c773d8b4a0f77cf1199cc9b32a77..b766bb93efd6f599f5ebc3c52ff375f0df9270c1 100644 (file)
@@ -45,13 +45,14 @@ broken.
 
  */
 
-#include <linux/interrupt.h>
-#include "../comedidev.h"
-
+#include <linux/pci.h>
 #include <linux/delay.h>
+#include <linux/interrupt.h>
 #include <linux/list.h>
 #include <linux/spinlock.h>
 
+#include "../comedidev.h"
+
 #include "comedi_fc.h"
 #include "8253.h"
 
index ee8bafcc46d118318f4639b4fcd9d4005b9c20b9..06490ebc8cc802ea94574fcd0c53e2b496716db8 100644 (file)
  *    Analog Input, Analog Output, Digital I/O
  */
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
 #include <linux/sched.h>
 #include <linux/firmware.h>
+
 #include "../comedidev.h"
 
 #define ME2600_FIRMWARE                "me2600_firmware.bin"
index e27850f628ced3a0cca48224f62798421b28de58..be2c15f84614400fc1b43cf552bbecdbf06c683f 100644 (file)
 
 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
 
-#include "mite.h"
+#include <linux/pci.h>
 
-#include "comedi_fc.h"
 #include "../comedidev.h"
 
+#include "comedi_fc.h"
+#include "mite.h"
 
 #define PCI_MITE_SIZE          4096
 #define PCI_DAQ_SIZE           4096
index 67aa6f4e4329f69d52f96205ebd08aba8ac7edcd..bcd4df290ec47913e422780972b261bac71300ab 100644 (file)
@@ -41,7 +41,9 @@ Updated: Sat, 25 Jan 2003 13:24:40 -0800
 #define DEBUG 1
 #define DEBUG_FLAGS
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
+
 #include "../comedidev.h"
 
 #include "comedi_fc.h"
index fb7e8b887ce70cd6e64f74205206e84891ff832b..bfa790ecf41d9fe7fbcab2b0797b5a6ef96c30ca 100644 (file)
@@ -50,8 +50,11 @@ except maybe the 6514.
 
 #define DEBUG 1
 #define DEBUG_FLAGS
+
+#include <linux/pci.h>
 #include <linux/interrupt.h>
 #include <linux/slab.h>
+
 #include "../comedidev.h"
 
 #include "comedi_fc.h"
index bdef2e4dd3db5b77ccffd4b40f8a4c64d4dc5bc9..e46dd7a1a72453068b1883fd78b32e44124c7a6e 100644 (file)
@@ -40,8 +40,11 @@ DAQ 6601/6602 User Manual (NI 322137B-01)
 
 */
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
+
 #include "../comedidev.h"
+
 #include "mite.h"
 #include "ni_tio.h"
 
index 6f3c0909c06d2b317816c1d0a6ec2a49d6811a5b..2faf86c83dc5be3190df82a04d50e738a5e5e557 100644 (file)
@@ -41,8 +41,10 @@ Commands are not supported.
 
 */
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
 #include <linux/slab.h>
+
 #include "../comedidev.h"
 
 #include "mite.h"
index dedb2ab780f3e3211fd476b91f03cc7aede7acff..9e4d2da5f5a799063d8df8e57b91542708553633 100644 (file)
@@ -73,12 +73,14 @@ NI manuals:
 
 */
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
 #include <linux/slab.h>
 #include <linux/io.h>
+#include <linux/delay.h>
+
 #include "../comedidev.h"
 
-#include <linux/delay.h>
 #include <asm/dma.h>
 
 #include "8253.h"
index ba8c2f2561f526947e614fb561662a2397fdbd73..0a00260d11f317a18ce85ef0e66bb7759b40bc7f 100644 (file)
@@ -55,9 +55,11 @@ comedi_nonfree_firmware tarball available from http://www.comedi.org
 /* #define DEBUG 1 */
 /* #define DEBUG_FLAGS */
 
+#include <linux/delay.h>
 #include <linux/interrupt.h>
 #include <linux/sched.h>
 #include <linux/firmware.h>
+
 #include "../comedidev.h"
 
 #include "comedi_fc.h"
index 26a870cbc7a1285cbf0e5e943d894538c7b1728c..98b43f2fc65d4dae5511b8cee4490668d5922e71 100644 (file)
@@ -110,10 +110,12 @@ Bugs:
 
 */
 
+#include <linux/delay.h>
+#include <linux/delay.h>
+
 #include "../comedidev.h"
 
 #include <asm/byteorder.h>
-#include <linux/delay.h>
 
 #include "ni_stc.h"
 #include "mite.h"
index 48b049b7d36a2f646ed32812ef0c344c45bd17b2..13f79f49748a3e5b5e169d6f4b5a8ec1a504c803 100644 (file)
@@ -53,8 +53,6 @@ Configuration Options:
 
 #include "../comedidev.h"
 
-#include <linux/pci.h>         /* for PCI devices */
-
 #define CHANS 8
 #define IOSIZE 16
 #define LSB(x) ((unsigned char)((x) & 0xff))
index d6d3d9584ea42fbe50c08a1a709703fa6bb54d95..5fa1fe08eb97f5f75da24e0aa755225e44c952b0 100644 (file)
@@ -78,9 +78,9 @@ Configuration Options:
 
 #include <linux/interrupt.h>
 #include <linux/slab.h>
-#include <linux/pci.h>
 
 #include "../comedidev.h"
+
 #include "comedi_fc.h"
 
 /* This stuff is all from pcmuio.c -- it refers to the DIO subdevices only */
index b74431fba15179eb87bac38b44238ccfb5a24cf3..71ef3f90bc98baf53e3e3a83a7259337547b09b9 100644 (file)
@@ -77,9 +77,9 @@ Configuration Options:
 
 #include <linux/interrupt.h>
 #include <linux/slab.h>
-#include <linux/pci.h>
 
 #include "../comedidev.h"
+
 #include "comedi_fc.h"
 
 #define CHANS_PER_PORT   8
index 5581452764274b9f9130b2f42b59127ce7481486..6a5c914fa50183be2a66ee00cd52dbbf3cdc36cb 100644 (file)
@@ -101,8 +101,9 @@ Configuration options:
 
 */
 
-#include <linux/interrupt.h>
+#include <linux/pci.h>
 #include <linux/delay.h>
+#include <linux/interrupt.h>
 
 #include "../comedidev.h"
 
index 0c7221c6dfeab705b61bdb6c04c3809f73b5201d..81a1fe661579d365ff82dfac8c0de06b53045110 100644 (file)
@@ -64,6 +64,7 @@ INSN_CONFIG instructions:
    comedi_do_insn(cf,&insn); //executing configuration
 */
 
+#include <linux/pci.h>
 #include <linux/interrupt.h>
 #include <linux/kernel.h>
 #include <linux/types.h>
index 0aad815f92f538f8ac3859688f78ab23e5c2a6a6..cb83f6ae48b9630ecd0ec6793f259ed54506d0ae 100644 (file)
@@ -72,9 +72,9 @@ Configuration Options:
  * options that are used with comedi_config.
  */
 
-#include "../comedidev.h"
+#include <linux/pci.h>
 
-#include <linux/pci.h>         /* for PCI devices */
+#include "../comedidev.h"
 
 #include "comedi_fc.h"