diff options
Diffstat (limited to 'drivers/staging/comedi/drivers/pcl730.c')
-rw-r--r-- | drivers/staging/comedi/drivers/pcl730.c | 26 |
1 files changed, 4 insertions, 22 deletions
diff --git a/drivers/staging/comedi/drivers/pcl730.c b/drivers/staging/comedi/drivers/pcl730.c index e3de49937452..2879db75da3e 100644 --- a/drivers/staging/comedi/drivers/pcl730.c +++ b/drivers/staging/comedi/drivers/pcl730.c @@ -64,21 +64,11 @@ static int pcl730_attach(struct comedi_device *dev, struct comedi_devconfig *it) { const struct pcl730_board *board = comedi_board(dev); struct comedi_subdevice *s; - unsigned long iobase; - unsigned int iorange; int ret; - iobase = it->options[0]; - iorange = board->io_range; - printk(KERN_INFO "comedi%d: pcl730: board=%s 0x%04lx ", dev->minor, - board->name, iobase); - if (!request_region(iobase, iorange, "pcl730")) { - printk("I/O port conflict\n"); - return -EIO; - } - dev->board_name = board->name; - dev->iobase = iobase; - dev->irq = 0; + ret = comedi_request_region(dev, it->options[0], board->io_range); + if (ret) + return ret; ret = comedi_alloc_subdevices(dev, 4); if (ret) @@ -129,14 +119,6 @@ static int pcl730_attach(struct comedi_device *dev, struct comedi_devconfig *it) return 0; } -static void pcl730_detach(struct comedi_device *dev) -{ - const struct pcl730_board *board = comedi_board(dev); - - if (dev->iobase) - release_region(dev->iobase, board->io_range); -} - static const struct pcl730_board boardtypes[] = { { "pcl730", PCL730_SIZE, }, { "iso730", PCL730_SIZE, }, @@ -147,7 +129,7 @@ static struct comedi_driver pcl730_driver = { .driver_name = "pcl730", .module = THIS_MODULE, .attach = pcl730_attach, - .detach = pcl730_detach, + .detach = comedi_legacy_detach, .board_name = &boardtypes[0].name, .num_names = ARRAY_SIZE(boardtypes), .offset = sizeof(struct pcl730_board), |