diff options
Diffstat (limited to 'drivers/staging/quickstart/quickstart.c')
-rw-r--r-- | drivers/staging/quickstart/quickstart.c | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/drivers/staging/quickstart/quickstart.c b/drivers/staging/quickstart/quickstart.c index 66122479d52..d83bec876d2 100644 --- a/drivers/staging/quickstart/quickstart.c +++ b/drivers/staging/quickstart/quickstart.c @@ -5,8 +5,7 @@ * Copyright (C) 2007-2010 Angelo Arrifano <miknix@gmail.com> * * Information gathered from disassebled dsdt and from here: - * "http://download.microsoft.com/download/9/c/5/ - * 9c5b2167-8017-4bae-9fde-d599bac8184a/DirAppLaunch_Vista.doc" + * <http://www.microsoft.com/whdc/system/platform/firmware/DirAppLaunch.mspx> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -356,7 +355,6 @@ static int quickstart_acpi_remove(struct acpi_device *device, int type) static void quickstart_exit(void) { input_unregister_device(quickstart_input); - input_free_device(quickstart_input); device_remove_file(&pf_device->dev, &dev_attr_pressed_button); device_remove_file(&pf_device->dev, &dev_attr_buttons); @@ -376,6 +374,7 @@ static int __init quickstart_init_input(void) { struct quickstart_btn **ptr = &quickstart_data.btn_lst; int count; + int ret; quickstart_input = input_allocate_device(); @@ -392,22 +391,27 @@ static int __init quickstart_init_input(void) ptr = &((*ptr)->next); } - return input_register_device(quickstart_input); + ret = input_register_device(quickstart_input); + if (ret) { + input_free_device(quickstart_input); + return ret; + } + + return 0; } static int __init quickstart_init(void) { int ret; - acpi_status status = 0; /* ACPI Check */ if (acpi_disabled) return -ENODEV; /* ACPI driver register */ - status = acpi_bus_register_driver(&quickstart_acpi_driver); - if (status < 0) - return -ENODEV; + ret = acpi_bus_register_driver(&quickstart_acpi_driver); + if (ret) + return ret; /* If existing bus with no devices */ if (!quickstart_data.btn_lst) { |