summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/staging/panel/panel.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/staging/panel/panel.c b/drivers/staging/panel/panel.c
index 3339633..ac14725 100644
--- a/drivers/staging/panel/panel.c
+++ b/drivers/staging/panel/panel.c
@@ -2234,6 +2234,7 @@ static void panel_attach(struct parport *port)
if (misc_register(&keypad_dev))
goto err_lcd_unreg;
}
+ register_reboot_notifier(&panel_notifier);
return;
err_lcd_unreg:
@@ -2255,6 +2256,8 @@ static void panel_detach(struct parport *port)
return;
}
+ unregister_reboot_notifier(&panel_notifier);
+
if (keypad.enabled && keypad_initialized) {
misc_deregister(&keypad_dev);
keypad_initialized = 0;
@@ -2321,7 +2324,6 @@ static int __init panel_init_module(void)
break;
}
-
/*
* Overwrite selection with module param values (both keypad and lcd),
* where the deprecated params have lower prio.
@@ -2391,8 +2393,6 @@ static int __init panel_init_module(void)
return -EIO;
}
- register_reboot_notifier(&panel_notifier);
-
if (pprt)
pr_info("driver version " PANEL_VERSION
" registered on parport%d (io=0x%lx).\n", parport,
@@ -2408,7 +2408,6 @@ static int __init panel_init_module(void)
static void __exit panel_cleanup_module(void)
{
- unregister_reboot_notifier(&panel_notifier);
if (scan_timer.function != NULL)
del_timer_sync(&scan_timer);
OpenPOWER on IntegriCloud