staging: comedi: dt2811: use comedi_request_region()
[firefly-linux-kernel-4.4.55.git] / drivers / staging / comedi / drivers / dt2811.c
index f90ecf494aafd7005b415e35c9023ab5267a3f44..16cbd540ab31ee65d5381189d6a17fba2d3a87f1 100644 (file)
@@ -50,8 +50,6 @@ Configuration options:
 
 #include <linux/ioport.h>
 
-static const char *driver_name = "dt2811";
-
 static const struct comedi_lrange range_dt2811_pgh_ai_5_unipolar = {
        4, {
                RANGE(0, 5),
@@ -401,19 +399,10 @@ static int dt2811_attach(struct comedi_device *dev, struct comedi_devconfig *it)
        struct dt2811_private *devpriv;
        int ret;
        struct comedi_subdevice *s;
-       unsigned long iobase;
-
-       iobase = it->options[0];
 
-       printk(KERN_INFO "comedi%d: dt2811:base=0x%04lx\n", dev->minor, iobase);
-
-       if (!request_region(iobase, DT2811_SIZE, driver_name)) {
-               printk(KERN_ERR "I/O port conflict\n");
-               return -EIO;
-       }
-
-       dev->iobase = iobase;
-       dev->board_name = board->name;
+       ret = comedi_request_region(dev, it->options[0], DT2811_SIZE);
+       if (ret)
+               return ret;
 
 #if 0
        outb(0, dev->iobase + DT2811_ADCSR);
@@ -449,7 +438,7 @@ static int dt2811_attach(struct comedi_device *dev, struct comedi_devconfig *it)
                        i = inb(dev->iobase + DT2811_ADDATHI);
                        printk(KERN_INFO "(irq = %d)\n", irq);
                        ret = request_irq(irq, dt2811_interrupt, 0,
-                                         driver_name, dev);
+                                         dev->board_name, dev);
                        if (ret < 0)
                                return -EIO;
                        dev->irq = irq;