Commit 29a1cbe4 authored by Prarit Bhargava's avatar Prarit Bhargava Committed by Vojtech Pavlik

Input: i8042 - call i8042_platform_exit to release resources

       acquired by i8042_platform_init when controller
       initialization fails.
Signed-off-by: default avatarPrarit Bhargava <prarit@sgi.com>
Signed-off-by: default avatarDmitry Torokhov <dtor@mail.ru>
Signed-off-by: default avatarVojtech Pavlik <vojtech@suse.cz>
parent af83e659
...@@ -1055,16 +1055,21 @@ static int __init i8042_init(void) ...@@ -1055,16 +1055,21 @@ static int __init i8042_init(void)
i8042_ports[I8042_AUX_PORT_NO].irq = I8042_AUX_IRQ; i8042_ports[I8042_AUX_PORT_NO].irq = I8042_AUX_IRQ;
i8042_ports[I8042_KBD_PORT_NO].irq = I8042_KBD_IRQ; i8042_ports[I8042_KBD_PORT_NO].irq = I8042_KBD_IRQ;
if (i8042_controller_init()) if (i8042_controller_init()) {
i8042_platform_exit();
return -ENODEV; return -ENODEV;
}
err = driver_register(&i8042_driver); err = driver_register(&i8042_driver);
if (err) if (err) {
i8042_platform_exit();
return err; return err;
}
i8042_platform_device = platform_device_register_simple("i8042", -1, NULL, 0); i8042_platform_device = platform_device_register_simple("i8042", -1, NULL, 0);
if (IS_ERR(i8042_platform_device)) { if (IS_ERR(i8042_platform_device)) {
driver_unregister(&i8042_driver); driver_unregister(&i8042_driver);
i8042_platform_exit();
return PTR_ERR(i8042_platform_device); return PTR_ERR(i8042_platform_device);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment