gpio-patchset-fixups: request-region
Subsystems (2)
Jim Cromie
maintainerPATCH 4/11 gpio-patchset-fixups: request-region
diff.13-fix-request-region
Usage of request_region() was wrong ( returns 0 on error - docpatch sent to trivial ). This fixes it, and clarifies the err-msg.
Signed-off-by Jim Cromie <[email protected]>
---
drivers/char/pc8736x_gpio.c +0 -0
@@ -297,9 +297,12 @@ static int __init pc8736x_gpio_init(void
pc8736x_gpio_base = (superio_inb(SIO_BASE_HADDR) << 8 | superio_inb(SIO_BASE_LADDR));
- if (request_region(pc8736x_gpio_base, 16, DEVNAME))
- dev_info(&pdev->dev, "GPIO ioport %x reserved\n",
- pc8736x_gpio_base);
+ if (!request_region(pc8736x_gpio_base, 16, DEVNAME)) {
+ dev_err(&pdev->dev, "GPIO ioport %x busy\n",
+ pc8736x_gpio_base);
+ return -ENODEV;
+ }
+ dev_info(&pdev->dev, "GPIO ioport %x reserved\n", pc8736x_gpio_base);
r = register_chrdev(major, DEVNAME, &pc8736x_gpio_fops);
if (r < 0) {