summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavidlohr Bueso <dave@gnu.org>2011-01-17 20:48:18 -0800
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2011-01-17 20:49:22 -0800
commitb0f05aadf1516c166ba301b7a535bc9429ce1961 (patch)
treef6c7db827f2a451b701f11bd4d1124f26fff9c56
parent81e78deafb21ba867eb244ab1117726c68d817f8 (diff)
downloadlinux-b0f05aadf1516c166ba301b7a535bc9429ce1961.tar.bz2
Input: ct82710c - return proper error code for ct82c710_open
If request_irq() fails we should return the proper error instead of -1. Signed-off-by: Davidlohr Bueso <dave@gnu.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
-rw-r--r--drivers/input/serio/ct82c710.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/input/serio/ct82c710.c b/drivers/input/serio/ct82c710.c
index 448c7724beb9..852816567241 100644
--- a/drivers/input/serio/ct82c710.c
+++ b/drivers/input/serio/ct82c710.c
@@ -111,9 +111,11 @@ static void ct82c710_close(struct serio *serio)
static int ct82c710_open(struct serio *serio)
{
unsigned char status;
+ int err;
- if (request_irq(CT82C710_IRQ, ct82c710_interrupt, 0, "ct82c710", NULL))
- return -1;
+ err = request_irq(CT82C710_IRQ, ct82c710_interrupt, 0, "ct82c710", NULL);
+ if (err)
+ return err;
status = inb_p(CT82C710_STATUS);
@@ -131,7 +133,7 @@ static int ct82c710_open(struct serio *serio)
status &= ~(CT82C710_ENABLE | CT82C710_INTS_ON);
outb_p(status, CT82C710_STATUS);
free_irq(CT82C710_IRQ, NULL);
- return -1;
+ return -EBUSY;
}
return 0;