have_dio: 0,
},
};
+
+static struct pci_device_id pci230_pci_table[] __devinitdata = {
+ { PCI_VENDOR_ID_AMPLICON, PCI_DEVICE_ID_PCI230, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_AMPLICON, PCI_DEVICE_ID_PCI260, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { 0 }
+};
+MODULE_DEVICE_TABLE(pci, pci230_pci_table);
/*
* Useful for shorthand access to the particular board structure
*/
#include <linux/timex.h>
#include <linux/timer.h>
#include <linux/pci.h>
+#include <linux/init.h>
#include <asm/io.h>
#include <linux/comedidev.h>
#include "8253.h"
//#undef CB_PCIDAS_DEBUG // disable debugging code
// PCI vendor number of ComputerBoards/MeasurementComputing
-#define PCI_VENDOR_CB 0x1307
+#define PCI_VENDOR_ID_CB 0x1307
#define TIMER_BASE 100 // 10MHz master clock
static const int max_fifo_size = 1024; // maximum fifo size of any supported board
// Number of boards in cb_pcidas_boards
#define N_BOARDS (sizeof(cb_pcidas_boards) / sizeof(cb_pcidas_board))
+static struct pci_device_id cb_pcidas_pci_table[] __devinitdata = {
+ { PCI_VENDOR_ID_CB, 0x0001, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x000f, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x0010, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x0019, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x001c, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x004c, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x001a, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x001b, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { 0 }
+};
+MODULE_DEVICE_TABLE(pci, cb_pcidas_pci_table);
+
/*
* Useful for shorthand access to the particular board structure
*/
pci_for_each_dev(pcidev)
{
// is it not a computer boards card?
- if(pcidev->vendor != PCI_VENDOR_CB)
+ if(pcidev->vendor != PCI_VENDOR_ID_CB)
continue;
// loop through cards supported by this driver
for(index = 0; index < N_BOARDS; index++)
#include <linux/timex.h>
#include <linux/timer.h>
#include <linux/pci.h>
+#include <linux/init.h>
#include <asm/io.h>
#include <linux/comedidev.h>
#include "8253.h"
//#undef PCIDAS64_DEBUG // disable debugging code
// PCI vendor number of ComputerBoards/MeasurementComputing
-#define PCI_VENDOR_CB 0x1307
+#define PCI_VENDOR_ID_CB 0x1307
#define TIMER_BASE 25 // 40MHz master clock
/* PCI-DAS64xxx base addresses */
// Number of boards in cb_pcidas_boards
#define N_BOARDS (sizeof(pcidas64_boards) / sizeof(pcidas64_board))
+static struct pci_device_id pcidas64_pci_table[] __devinitdata = {
+ { PCI_VENDOR_ID_CB, 0x001d, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x001e, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x0035, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x0036, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x0037, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { 0 }
+};
+MODULE_DEVICE_TABLE(pci, pcidas64_pci_table);
+
/*
* Useful for shorthand access to the particular board structure
*/
pci_for_each_dev(pcidev)
{
// is it not a computer boards card?
- if(pcidev->vendor != PCI_VENDOR_CB)
+ if(pcidev->vendor != PCI_VENDOR_ID_CB)
continue;
#ifdef PCIDAS64_DEBUG
printk(" found computer boards device id 0x%x on bus %i slot %i\n",
#include <linux/timex.h>
#include <linux/timer.h>
#include <linux/pci.h>
+#include <linux/init.h>
#include <asm/io.h>
#include <linux/comedidev.h>
#include "8255.h"
-#define PCI_VENDOR_CB 0x1307 // PCI vendor number of ComputerBoards
+#define PCI_VENDOR_ID_CB 0x1307 // PCI vendor number of ComputerBoards
#define N_BOARDS 10 // Number of boards in cb_pcidda_boards
/* PCI-DDA base addresses */
},
};
+static struct pci_device_id cb_pcidda_pci_table[] __devinitdata = {
+ { PCI_VENDOR_ID_CB, 0x0020, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x0021, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x0022, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x0023, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x0024, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_CB, 0x0025, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { 0 }
+};
+MODULE_DEVICE_TABLE(pci, cb_pcidda_pci_table);
+
/*
* Useful for shorthand access to the particular board structure
*/
printk("\n");
pci_for_each_dev(pcidev){
- if(pcidev->vendor==PCI_VENDOR_CB){
+ if(pcidev->vendor==PCI_VENDOR_ID_CB){
if(it->options[0] || it->options[1]){
if(pcidev->bus->number==it->options[0] &&
PCI_SLOT(pcidev->devfn)==it->options[1]){
#include <linux/comedidev.h>
#include <linux/errno.h>
#include <linux/ioport.h>
-#include <asm/io.h>
#include <linux/malloc.h>
#include <linux/delay.h>
-#include "8255.h"
#include <linux/pci.h>
+#include <linux/init.h>
+
+#include <asm/io.h>
+
+#include "8255.h"
#define PCI_VENDOR_ID_COMPUTERBOARDS 0x1307
unsigned int pci_iobase; // additional base address for pci-das08
};
+static struct pci_device_id das08_pci_table[] __devinitdata = {
+ { PCI_VENDOR_ID_COMPUTERBOARDS, PCI_DEVICE_ID_PCIDAS08, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { 0 }
+};
+MODULE_DEVICE_TABLE(pci, das08_pci_table);
+
#define devpriv ((struct das08_private_struct *)dev->private)
#define thisboard ((struct das08_board_struct *)dev->board_ptr)
#include <linux/comedidev.h>
#include <linux/module.h>
-#include <asm/io.h>
#include <linux/delay.h>
#include <linux/pci.h>
+#include <linux/init.h>
+
+#include <asm/io.h>
#define PCI_VENDOR_ID_DT 0x1116
#define n_dt3k_boards sizeof(dt3k_boardtypes)/sizeof(dt3k_boardtype)
#define this_board ((dt3k_boardtype *)dev->board_ptr)
+static struct pci_device_id dt3k_pci_table[] __devinitdata = {
+ { PCI_VENDOR_ID_DT, 0x0022, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_DT, 0x0027, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_DT, 0x0023, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_DT, 0x0024, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_DT, 0x0028, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_DT, 0x0025, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_DT, 0x0026, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { 0 }
+};
+MODULE_DEVICE_TABLE(pci, dt3k_pci_table);
+
#define DT3000_SIZE (4*0x1000)
/* dual-ported RAM location definitions */
#include <linux/errno.h>
#include <linux/delay.h>
#include <linux/interrupt.h>
+#include <linux/init.h>
+
#include <asm/io.h>
+
#include <linux/comedidev.h>
#include "mite.h"
},
};
+static struct pci_device_id ni_670x_pci_table[] __devinitdata = {
+ { PCI_VENDOR_ID_NATINST, 0x2c90, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ //{ PCI_VENDOR_ID_NATINST, 0x2c90, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { 0 }
+};
+MODULE_DEVICE_TABLE(pci, ni_670x_pci_table);
+
#define thisboard ((ni_670x_board *)dev->board_ptr)
typedef struct
#include <linux/comedidev.h>
#include <linux/errno.h>
#include <linux/ioport.h>
-#include <asm/io.h>
#include <linux/malloc.h>
#include <linux/delay.h>
#include <linux/irq.h>
+#include <linux/init.h>
+
+#include <asm/io.h>
#include "mite.h"
#include "8255.h"
#define n_nidio_boards (sizeof(nidio_boards)/sizeof(nidio_boards[0]))
#define this_board ((nidio_board *)dev->board_ptr)
+static struct pci_device_id ni_pcidio_pci_table[] __devinitdata = {
+ { PCI_VENDOR_ID_NATINST, 0x1150, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_NATINST, 0x1320, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_NATINST, 0x0160, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_NATINST, 0x1630, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_NATINST, 0x13c0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_NATINST, 0x0400, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_NATINST, 0x1250, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_NATINST, 0x17d0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_NATINST, 0x1800, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { 0 }
+};
+MODULE_DEVICE_TABLE(pci, ni_pcidio_pci_table);
+
typedef struct{
struct mite_struct *mite;
int boardtype;
#include <linux/delay.h>
#include <linux/mm.h>
#include <linux/interrupt.h>
-#include <asm/io.h>
#include <linux/malloc.h>
#include <linux/comedidev.h>
+#include <linux/init.h>
+
+#include <asm/io.h>
+
#include "ni_stc.h"
#include "mite.h"
#define MAX_N_CALDACS (12+12+1)
+#define NI_VENDOR_ID 0x1093
+/* The following two tables must be in the same order */
+static struct pci_device_id ni_pci_table[] __devinitdata = {
+ { NI_VENDOR_ID, 0x0162, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x1170, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x11d0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x1180, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x1190, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x11c0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x1330, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x1270, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x1340, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x1350, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x2a60, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x2a70, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x2a80, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x2ab0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x2ca0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x2c80, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x18b0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x14e0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x14f0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x1880, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x1870, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x15b0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x11b0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { NI_VENDOR_ID, 0x18c0, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { 0 }
+};
+MODULE_DEVICE_TABLE(pci, ni_pci_table);
static ni_board ni_boards[]={
{ device_id: 0x0162, // NI also says 0x1620. typo?
#include <linux/timex.h>
#include <linux/timer.h>
#include <linux/pci.h>
+#include <linux/init.h>
+
#include <asm/io.h>
#include <linux/comedidev.h>
======================================================================*/
/* registers */
-#define RTD_VENDOR_ID 0x1435
+#define PCI_VENDOR_ID_RTD 0x1435
/*
The board has three memory windows: las0, las1, and lcfg (the PCI chip)
Las1 has the data and can be burst DMAed 32bits at a time.
},
};
+static struct pci_device_id rtd520_pci_table[] __devinitdata = {
+ { PCI_VENDOR_ID_RTD, 0x7520, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_RTD, 0x4520, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { 0 }
+};
+MODULE_DEVICE_TABLE(pci, rtd520_pci_table);
+
/*
* Useful for shorthand access to the particular board structure
*/
* Probe the device to determine what device in the series it is.
*/
pci_for_each_dev (pcidev) {
- if (pcidev->vendor == RTD_VENDOR_ID) {
+ if (pcidev->vendor == PCI_VENDOR_ID_RTD) {
if (it->options[0] || it->options[1]) {
if (pcidev->bus->number == it->options[0]
&& PCI_SLOT(pcidev->devfn) == it->options[1]) {
#include <linux/interrupt.h>
#include <linux/timex.h>
#include <linux/timer.h>
+#include <linux/init.h>
+#include <linux/pci.h>
#include <asm/io.h>
#include <linux/comedidev.h>
have_dio: 0,
},
};
+
+/* This is used by modprobe to translate PCI IDs to drivers. Should
+ * only be used for PCI and ISA-PnP devices */
+#define PCI_VENDOR_ID_SKEL 0xdafe
+static struct pci_device_id skel_pci_table[] __devinitdata = {
+ { PCI_VENDOR_ID_SKEL, 0x0100, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { PCI_VENDOR_ID_SKEL, 0x0200, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { 0 }
+};
+MODULE_DEVICE_TABLE(pci, skel_pci_table);
+
/*
* Useful for shorthand access to the particular board structure
*/