staging: comedi: addi_apci_1500: remove eeprom support
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Tue, 14 Oct 2014 17:44:31 +0000 (10:44 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 29 Oct 2014 07:48:54 +0000 (15:48 +0800)
As indicated in the boardinfo, the hardware does not have an eeprom. Remove
the subdevice and support code for it.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/drivers/addi_apci_1500.c

index c69510b..7c32c85 100644 (file)
@@ -7,13 +7,11 @@
 
 #include "addi-data/addi_common.h"
 
-#include "addi-data/addi_eeprom.c"
 #include "addi-data/hwdrv_apci1500.c"
 
 static const struct addi_board apci1500_boardtypes[] = {
        {
                .name                   = "apci1500",
-               .i_PCIEeprom            = 0,
                .i_NbrDiChannel         = 16,
                .i_NbrDoChannel         = 16,
                .i_DoMaxdata            = 0xffff,
@@ -21,23 +19,6 @@ static const struct addi_board apci1500_boardtypes[] = {
        },
 };
 
-static int i_ADDIDATA_InsnReadEeprom(struct comedi_device *dev,
-                                    struct comedi_subdevice *s,
-                                    struct comedi_insn *insn,
-                                    unsigned int *data)
-{
-       const struct addi_board *this_board = dev->board_ptr;
-       struct addi_private *devpriv = dev->private;
-       unsigned short w_Address = CR_CHAN(insn->chanspec);
-       unsigned short w_Data;
-
-       w_Data = addi_eeprom_readw(devpriv->i_IobaseAmcc,
-               this_board->pc_EepromChip, 2 * w_Address);
-       data[0] = w_Data;
-
-       return insn->n;
-}
-
 static int apci1500_auto_attach(struct comedi_device *dev,
                                unsigned long context)
 {
@@ -45,7 +26,6 @@ static int apci1500_auto_attach(struct comedi_device *dev,
        const struct addi_board *this_board = dev->board_ptr;
        struct addi_private *devpriv;
        struct comedi_subdevice *s;
-       unsigned int dw_Dummy;
        int ret;
 
        dev->board_ptr = &apci1500_boardtypes[0];
@@ -88,24 +68,7 @@ static int apci1500_auto_attach(struct comedi_device *dev,
                        dev->irq = pcidev->irq;
        }
 
-       /*  Read eepeom and fill addi_board Structure */
-
-       if (this_board->i_PCIEeprom) {
-               if (!(strcmp(this_board->pc_EepromChip, "S5920"))) {
-                       /*  Set 3 wait stait */
-                       if (!(strcmp(dev->board_name, "apci035")))
-                               outl(0x80808082, devpriv->i_IobaseAmcc + 0x60);
-                       else
-                               outl(0x83838383, devpriv->i_IobaseAmcc + 0x60);
-
-                       /*  Enable the interrupt for the controller */
-                       dw_Dummy = inl(devpriv->i_IobaseAmcc + 0x38);
-                       outl(dw_Dummy | 0x2000, devpriv->i_IobaseAmcc + 0x38);
-               }
-               addi_eeprom_read_info(dev, pci_resource_start(pcidev, 0));
-       }
-
-       ret = comedi_alloc_subdevices(dev, 4);
+       ret = comedi_alloc_subdevices(dev, 3);
        if (ret)
                return ret;
 
@@ -161,18 +124,6 @@ static int apci1500_auto_attach(struct comedi_device *dev,
                s->type = COMEDI_SUBD_UNUSED;
        }
 
-       /* EEPROM */
-       s = &dev->subdevices[3];
-       if (this_board->i_PCIEeprom) {
-               s->type = COMEDI_SUBD_MEMORY;
-               s->subdev_flags = SDF_READABLE | SDF_INTERNAL;
-               s->n_chan = 256;
-               s->maxdata = 0xffff;
-               s->insn_read = i_ADDIDATA_InsnReadEeprom;
-       } else {
-               s->type = COMEDI_SUBD_UNUSED;
-       }
-
        apci1500_reset(dev);
 
        return 0;