diff options
| -rw-r--r-- | drivers/staging/panel/panel.c | 23 | 
1 files changed, 12 insertions, 11 deletions
| diff --git a/drivers/staging/panel/panel.c b/drivers/staging/panel/panel.c index ab69c1bf36a8..c2747bc88c6f 100644 --- a/drivers/staging/panel/panel.c +++ b/drivers/staging/panel/panel.c | |||
| @@ -2164,19 +2164,20 @@ static void __exit panel_cleanup_module(void) | |||
| 2164 | if (scan_timer.function != NULL) | 2164 | if (scan_timer.function != NULL) | 
| 2165 | del_timer(&scan_timer); | 2165 | del_timer(&scan_timer); | 
| 2166 | 2166 | ||
| 2167 | if (keypad_enabled) | 2167 | if (pprt != NULL) { | 
| 2168 | misc_deregister(&keypad_dev); | 2168 | if (keypad_enabled) | 
| 2169 | misc_deregister(&keypad_dev); | ||
| 2170 | |||
| 2171 | if (lcd_enabled) { | ||
| 2172 | panel_lcd_print("\x0cLCD driver " PANEL_VERSION | ||
| 2173 | "\nunloaded.\x1b[Lc\x1b[Lb\x1b[L-"); | ||
| 2174 | misc_deregister(&lcd_dev); | ||
| 2175 | } | ||
| 2169 | 2176 | ||
| 2170 | if (lcd_enabled) { | 2177 | /* TODO: free all input signals */ | 
| 2171 | panel_lcd_print("\x0cLCD driver " PANEL_VERSION | 2178 | parport_release(pprt); | 
| 2172 | "\nunloaded.\x1b[Lc\x1b[Lb\x1b[L-"); | 2179 | parport_unregister_device(pprt); | 
| 2173 | misc_deregister(&lcd_dev); | ||
| 2174 | } | 2180 | } | 
| 2175 | |||
| 2176 | /* TODO: free all input signals */ | ||
| 2177 | |||
| 2178 | parport_release(pprt); | ||
| 2179 | parport_unregister_device(pprt); | ||
| 2180 | parport_unregister_driver(&panel_driver); | 2181 | parport_unregister_driver(&panel_driver); | 
| 2181 | } | 2182 | } | 
| 2182 | 2183 | ||
