]> err.no Git - linux-2.6/blobdiff - drivers/input/keyboard/atakbd.c
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6
[linux-2.6] / drivers / input / keyboard / atakbd.c
index f948d3a14a930383b9d2afeb78c09393114a07a7..1839194ea98787ff9fb82f810c18fb4a8bdb893d 100644 (file)
@@ -217,10 +217,10 @@ static void atakbd_interrupt(unsigned char scancode, char down)
 
 static int __init atakbd_init(void)
 {
-       int i;
+       int i, error;
 
        if (!MACH_IS_ATARI || !ATARIHW_PRESENT(ST_MFP))
-               return -EIO;
+               return -ENODEV;
 
        // need to init core driver if not already done so
        if (atari_keyb_init())
@@ -237,7 +237,7 @@ static int __init atakbd_init(void)
        atakbd_dev->id.product = 0x0001;
        atakbd_dev->id.version = 0x0100;
 
-       atakbd_dev->evbit[0] = BIT(EV_KEY) | BIT(EV_REP);
+       atakbd_dev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_REP);
        atakbd_dev->keycode = atakbd_keycode;
        atakbd_dev->keycodesize = sizeof(unsigned char);
        atakbd_dev->keycodemax = ARRAY_SIZE(atakbd_keycode);
@@ -247,9 +247,10 @@ static int __init atakbd_init(void)
        }
 
        /* error check */
-       if (input_register_device(atakbd_dev)) {
+       error = input_register_device(atakbd_dev);
+       if (error) {
                input_free_device(atakbd_dev);
-               return -ENOMEM;
+               return error;
        }
 
        atari_input_keyboard_interrupt_hook = atakbd_interrupt;