forked from Minki/linux
platform/x86: dell-wmi: remove sparse_keymap_free() calls
As sparse_keymap_setup() now uses a managed memory allocation for the keymap copy it creates, the latter is freed automatically. Remove all calls to sparse_keymap_free(). As this reduces dell_wmi_input_destroy() to one line, replace all calls to that function with direct calls to input_unregister_device(). Signed-off-by: Michał Kępień <kernel@kempniu.pl> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
This commit is contained in:
parent
469b017045
commit
815edfe7ad
@ -603,23 +603,15 @@ static int __init dell_wmi_input_setup(void)
|
||||
|
||||
err = input_register_device(dell_wmi_input_dev);
|
||||
if (err)
|
||||
goto err_free_keymap;
|
||||
goto err_free_dev;
|
||||
|
||||
return 0;
|
||||
|
||||
err_free_keymap:
|
||||
sparse_keymap_free(dell_wmi_input_dev);
|
||||
err_free_dev:
|
||||
input_free_device(dell_wmi_input_dev);
|
||||
return err;
|
||||
}
|
||||
|
||||
static void dell_wmi_input_destroy(void)
|
||||
{
|
||||
sparse_keymap_free(dell_wmi_input_dev);
|
||||
input_unregister_device(dell_wmi_input_dev);
|
||||
}
|
||||
|
||||
/*
|
||||
* Descriptor buffer is 128 byte long and contains:
|
||||
*
|
||||
@ -740,7 +732,7 @@ static int __init dell_wmi_init(void)
|
||||
status = wmi_install_notify_handler(DELL_EVENT_GUID,
|
||||
dell_wmi_notify, NULL);
|
||||
if (ACPI_FAILURE(status)) {
|
||||
dell_wmi_input_destroy();
|
||||
input_unregister_device(dell_wmi_input_dev);
|
||||
pr_err("Unable to register notify handler - %d\n", status);
|
||||
return -ENODEV;
|
||||
}
|
||||
@ -752,7 +744,7 @@ static int __init dell_wmi_init(void)
|
||||
if (err) {
|
||||
pr_err("Failed to enable WMI events\n");
|
||||
wmi_remove_notify_handler(DELL_EVENT_GUID);
|
||||
dell_wmi_input_destroy();
|
||||
input_unregister_device(dell_wmi_input_dev);
|
||||
return err;
|
||||
}
|
||||
}
|
||||
@ -766,6 +758,6 @@ static void __exit dell_wmi_exit(void)
|
||||
if (wmi_requires_smbios_request)
|
||||
dell_wmi_events_set_enabled(false);
|
||||
wmi_remove_notify_handler(DELL_EVENT_GUID);
|
||||
dell_wmi_input_destroy();
|
||||
input_unregister_device(dell_wmi_input_dev);
|
||||
}
|
||||
module_exit(dell_wmi_exit);
|
||||
|
Loading…
Reference in New Issue
Block a user