both the misc_deregister(), parport_release() and
parport_unregister_device() is there in the module_exit function also.
detach is called from parport_unregister_driver() and by the time
detach executes misc_deregister(), parport_release() and
parport_unregister_device() has already executed marking
keypad_initialized and lcd.initialized  as false. so this part of the
code will never execute.

Signed-off-by: Sudip Mukherjee <su...@vectorindia.org>
---
 drivers/staging/panel/panel.c | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/drivers/staging/panel/panel.c b/drivers/staging/panel/panel.c
index ea54fb4..1d8ed8b 100644
--- a/drivers/staging/panel/panel.c
+++ b/drivers/staging/panel/panel.c
@@ -2252,20 +2252,6 @@ static void panel_detach(struct parport *port)
        }
 
        unregister_reboot_notifier(&panel_notifier);
-
-       if (keypad.enabled && keypad_initialized) {
-               misc_deregister(&keypad_dev);
-               keypad_initialized = 0;
-       }
-
-       if (lcd.enabled && lcd.initialized) {
-               misc_deregister(&lcd_dev);
-               lcd.initialized = false;
-       }
-
-       parport_release(pprt);
-       parport_unregister_device(pprt);
-       pprt = NULL;
 }
 
 static struct parport_driver panel_driver = {
-- 
1.8.1.2

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to