This driver is pretty broken but in the current state its difficult to figure out where to fix it. Introduce a couple helper functions to handle the read/write and reset of the Z8536 CIO chip. This removes quite a bit of lines of code and makes the driver a _bit_ easier to follow. Tidy up the register map defines. Fix the interrupt handler so that the IRQ is properly shared. H Hartley Sweeten (11): staging: comedi: hwdrv_apci1500: introduce z8536_read() staging: comedi: hwdrv_apci1500: introduce z8536_write() staging: comedi: hwdrv_apci1500: introduce z8536_reset() staging: comedi: addi_apci_1500: tidy up PCI Bar 1 register map staging: comedi: addi_apci_1500: remove private data 'iobase' staging: comedi: addi_apci_1500: remove private data 'i_IobaseReserved' staging: comedi: addi_apci_1500: use amcc_s5933.h defines staging: comedi: addi_apci_1500: rename private data 'i_IobaseAddon' staging: comedi: addi_apci_1500: tidy up PCI Bar 2 register map staging: comedi: addi_apci_1500: remove APCI1500_ADDRESS_RANGE staging: comedi: addi_apci_1500: handle shared interrupt .../comedi/drivers/addi-data/hwdrv_apci1500.c | 1490 +++++--------------- drivers/staging/comedi/drivers/addi_apci_1500.c | 32 +- 2 files changed, 387 insertions(+), 1135 deletions(-) -- 2.0.3 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel