linux/drivers/staging/comedi
Ian Abbott aa72f35ea6 staging: comedi: daqboard2000: use pci_id_table 'driver_data'
The driver's COMEDI "auto-attach" handler `db2k_auto_attach()` calls
`db2k_find_boardinfo()` to find an element of our board information
array `db2k_boardtypes[]` that matches the probed PCI device.  The
driver's PCI device table matches several boards in the DaqBoard/2000
series that match a single PCI vendor and device ID combination.
`db2k_find_boardinfo()` uses the probed PCI device's subvendor and
subdevice IDs to find the matching board information, returning `NULL`
for no match.

Change the driver's PCI device table `db2k_pci_table[]` to match
supported PCI vendor, device, subvendor and subdevice IDs, and set the
`.driver_data` member of each element to the index of the matching
element of `db2k_boardtypes[]`.  That index gets passed through to the
COMEDI auto-attach handler `db2k_auto_attach()`.  Use it to index
directly into `db2k_boardtypes[]` instead of calling
`db2k_find_boardinfo()` to find the match.
Use array index designators in the initializer of `db2k_boardtypes[]`.
Use enumerated constants defined by new type `enum db2k_boardids` to
name the board type indices.

The `id` member of `struct db2k_boardtype` is no longer used, so remove
it.  Also remove the subdevice ID macros `DB2K_SUBSYSTEM_IDS2` and
`DB2K_SUBSYSTEM_IDS4` as the subdevice IDs are now specified as numbers
in the PCI device table.  Remove `db2k_find_boardinfo()` as it is no
longer used.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Reviewed-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-01-10 17:38:32 +01:00
..
drivers staging: comedi: daqboard2000: use pci_id_table 'driver_data' 2017-01-10 17:38:32 +01:00
kcomedilib Staging: comedi: kcomedilib: Add module_init/exit function 2016-12-06 10:08:01 +01:00
comedi_buf.c Staging: comedi: comedi_buf: Replace 'unsigned' with 'unsigned int' 2016-03-28 07:30:36 -07:00
comedi_compat32.c staging: comedi: fix cast warning in comedi_compat32.c 2015-07-14 18:21:15 -07:00
comedi_compat32.h staging: comedi: comedi_compat32.h: add identifiers to function parameters 2017-01-03 15:27:55 +01:00
comedi_fops.c Staging: comedi: comedi_fops: Avoid orphaned proc entry 2017-01-03 15:30:21 +01:00
comedi_internal.h staging: comedi: comedi_internal.h: add identifiers to function parameters 2017-01-03 15:27:55 +01:00
comedi_pci.c staging: comedi: comedi_pci.c: Fix kernel-doc Return tags 2015-10-02 11:43:21 +02:00
comedi_pci.h drivers: staging: comedi: fix function prototypes 2017-01-03 15:27:12 +01:00
comedi_pcmcia.c staging: comedi: comedi_pcmcia.[ch]: add identifiers to function parameters 2017-01-03 15:27:55 +01:00
comedi_pcmcia.h staging: comedi: comedi_pcmcia.[ch]: add identifiers to function parameters 2017-01-03 15:27:55 +01:00
comedi_usb.c staging: comedi: comedi_usb.c: improve function documentation 2015-10-02 11:43:21 +02:00
comedi_usb.h staging: comedi: comedi_usb.h: add identifiers to function parameters 2017-01-03 15:27:55 +01:00
comedi.h staging: comedi: make constants slightly more consistent 2016-10-16 10:26:16 +02:00
comedidev.h Staging: comedi: comedidev.h: Drop old style zero-length array 2017-01-03 15:29:06 +01:00
comedilib.h staging: comedi: comedilib.h: Coding style warning fix for block comments 2015-12-21 16:01:12 -08:00
drivers.c Staging: comedi: Align the * in block comments 2016-10-02 17:29:11 +02:00
Kconfig staging: comedi: adv_pci_dio: separate out PCI-1760 support 2015-12-18 14:54:24 -08:00
Makefile
proc.c Staging: comedi: proc: Warn if unable to create proc entry 2017-01-03 15:30:21 +01:00
range.c staging: comedi: improve comedi_check_chanlist() documentation 2015-08-05 11:55:44 -07:00
TODO comedi: note a coverity discovered hole that needs fixing 2016-03-05 14:56:55 -08:00