staging: comedi: dt282x: use dev->write_subdev
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Thu, 5 Dec 2013 20:43:32 +0000 (13:43 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 6 Dec 2013 21:07:16 +0000 (13:07 -0800)
Use the dev->write_subdev that was setup in the device attach instead
of accessing the dev->subdevices array directly.

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/dt282x.c

index 5815fc2892995b90552e10c74e2e059021ae7dbe..ae714a526c35920c8648b71a7d7cbfea2b3874e5 100644 (file)
@@ -306,10 +306,10 @@ static void dt282x_munge(struct comedi_device *dev, unsigned short *buf,
 static void dt282x_ao_dma_interrupt(struct comedi_device *dev)
 {
        struct dt282x_private *devpriv = dev->private;
+       struct comedi_subdevice *s = dev->write_subdev;
        void *ptr;
        int size;
        int i;
-       struct comedi_subdevice *s = &dev->subdevices[1];
 
        outw(devpriv->supcsr | DT2821_CLRDMADNE, dev->iobase + DT2821_SUPCSR);
 
@@ -449,7 +449,7 @@ static irqreturn_t dt282x_interrupt(int irq, void *d)
        struct comedi_device *dev = d;
        struct dt282x_private *devpriv = dev->private;
        struct comedi_subdevice *s = dev->read_subdev;
-       struct comedi_subdevice *s_ao;
+       struct comedi_subdevice *s_ao = dev->write_subdev;
        unsigned int supcsr, adcsr, dacsr;
        int handled = 0;
 
@@ -458,7 +458,6 @@ static irqreturn_t dt282x_interrupt(int irq, void *d)
                return IRQ_HANDLED;
        }
 
-       s_ao = &dev->subdevices[1];
        adcsr = inw(dev->iobase + DT2821_ADCSR);
        dacsr = inw(dev->iobase + DT2821_DACSR);
        supcsr = inw(dev->iobase + DT2821_SUPCSR);