staging: comedi: addi_apci_3120: clarify AO subdevice init
authorH Hartley Sweeten <hartleys@visionengravers.com>
Fri, 2 Nov 2012 00:30:17 +0000 (17:30 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 2 Nov 2012 18:23:50 +0000 (11:23 -0700)
Only the apci3120 board supports an analog output subdevice. The
boardinfo indicates this by setting the 'i_NbrAoChannel' value.

The range table as well as the function used for the insn_write
operation are fixed for the analog outputs. Remove this information
from the boardinfo and use it directly in the subdevice init.

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>
drivers/staging/comedi/drivers/addi_apci_3120.c

index 9eb49ed..6ca3a3c 100644 (file)
@@ -21,12 +21,10 @@ static const struct addi_board apci3120_boardtypes[] = {
                .i_NbrAoChannel         = 8,
                .i_AiMaxdata            = 0xffff,
                .i_AoMaxdata            = 0x3fff,
-               .pr_AoRangelist         = &range_apci3120_ao,
                .i_NbrDiChannel         = 4,
                .i_NbrDoChannel         = 4,
                .i_DoMaxdata            = 0x0f,
                .interrupt              = v_APCI3120_Interrupt,
-               .ao_write               = i_APCI3120_InsnWriteAnalogOutput,
        }, {
                .pc_DriverName          = "apci3001",
                .i_VendorId             = PCI_VENDOR_ID_ADDIDATA_OLD,
@@ -172,9 +170,8 @@ static int apci3120_attach_pci(struct comedi_device *dev,
                s->n_chan = this_board->i_NbrAoChannel;
                s->maxdata = this_board->i_AoMaxdata;
                s->len_chanlist = this_board->i_NbrAoChannel;
-               s->range_table = this_board->pr_AoRangelist;
-               s->insn_config = this_board->ao_config;
-               s->insn_write = this_board->ao_write;
+               s->range_table = &range_apci3120_ao;
+               s->insn_write = i_APCI3120_InsnWriteAnalogOutput;
        } else {
                s->type = COMEDI_SUBD_UNUSED;
        }