staging: comedi: ni_at_a2150: use comedi_request_region()
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Tue, 9 Apr 2013 23:24:42 +0000 (16:24 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 11 Apr 2013 19:47:51 +0000 (12:47 -0700)
Use comedi_request_region() to request the I/O region used by this
driver.

Remove the noise when the board is first attached as well as the
error message when the request_region() fails, comedi_request_reqion()
will output the error message if necessary.

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

index 974704f1f9c09fc7c1305f5a7b0220aa9c76ab51..8cd66046872a20076b1b3d0e0b2e48533bb55604 100644 (file)
@@ -719,43 +719,20 @@ static int a2150_attach(struct comedi_device *dev, struct comedi_devconfig *it)
        const struct a2150_board *thisboard = comedi_board(dev);
        struct a2150_private *devpriv;
        struct comedi_subdevice *s;
-       unsigned long iobase = it->options[0];
        unsigned int irq = it->options[1];
        unsigned int dma = it->options[2];
        static const int timeout = 2000;
        int i;
        int ret;
 
-       printk("comedi%d: %s: io 0x%lx", dev->minor, dev->driver->driver_name,
-              iobase);
-       if (irq) {
-               printk(", irq %u", irq);
-       } else {
-               printk(", no irq");
-       }
-       if (dma) {
-               printk(", dma %u", dma);
-       } else {
-               printk(", no dma");
-       }
-       printk("\n");
-
        devpriv = kzalloc(sizeof(*devpriv), GFP_KERNEL);
        if (!devpriv)
                return -ENOMEM;
        dev->private = devpriv;
 
-       if (iobase == 0) {
-               printk(" io base address required\n");
-               return -EINVAL;
-       }
-
-       /* check if io addresses are available */
-       if (!request_region(iobase, A2150_SIZE, dev->driver->driver_name)) {
-               printk(" I/O port conflict\n");
-               return -EIO;
-       }
-       dev->iobase = iobase;
+       ret = comedi_request_region(dev, it->options[0], A2150_SIZE);
+       if (ret)
+               return ret;
 
        /* grab our IRQ */
        if (irq) {