Skip to content

Commit

Permalink
staging: comedi: das16m1: use comedi_request_region()
Browse files Browse the repository at this point in the history
Use comedi_request_region() to request the I/O region used by this
driver. Remove the error message when the request_region() fails,
comedi_request_reqion() will output the error message if necessary.

This driver does a second request_region() for the I/O space needed
by the 8255 chip. Modify the error message if that request fails so
it matches to format of the comedi_request_region() message.

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>
  • Loading branch information
H Hartley Sweeten authored and Greg Kroah-Hartman committed Apr 11, 2013
1 parent 45f9fcc commit a983834
Showing 1 changed file with 9 additions and 11 deletions.
20 changes: 9 additions & 11 deletions drivers/staging/comedi/drivers/das16m1.c
Original file line number Diff line number Diff line change
Expand Up @@ -571,26 +571,24 @@ static int das16m1_attach(struct comedi_device *dev,
struct comedi_subdevice *s;
int ret;
unsigned int irq;
unsigned long iobase;

iobase = it->options[0];

devpriv = kzalloc(sizeof(*devpriv), GFP_KERNEL);
if (!devpriv)
return -ENOMEM;
dev->private = devpriv;

if (!request_region(iobase, DAS16M1_SIZE, dev->board_name)) {
comedi_error(dev, "I/O port conflict\n");
return -EIO;
}
if (!request_region(iobase + DAS16M1_82C55, DAS16M1_SIZE2,
ret = comedi_request_region(dev, it->options[0], DAS16M1_SIZE);
if (ret)
return ret;
/* Request an additional region for the 8255 */
if (!request_region(dev->iobase + DAS16M1_82C55, DAS16M1_SIZE2,
dev->board_name)) {
release_region(iobase, DAS16M1_SIZE);
comedi_error(dev, "I/O port conflict\n");
release_region(dev->iobase, DAS16M1_SIZE);
dev_warn(dev->class_dev, "%s: I/O port conflict (%#lx,%d)\n",
dev->board_name,
dev->iobase + DAS16M1_82C55, DAS16M1_SIZE2);
return -EIO;
}
dev->iobase = iobase;

/* now for the irq */
irq = it->options[1];
Expand Down

0 comments on commit a983834

Please sign in to comment.