TTY: call tty_port_destroy in the rest of drivers
[deliverable/linux.git] / arch / alpha / kernel / srmcons.c
index 5d5865204a1d4739b0836bed605b5220192ad1b7..59b7bbad8394af9728adb449cdea12aa3540334c 100644 (file)
@@ -205,7 +205,6 @@ static const struct tty_operations srmcons_ops = {
 static int __init
 srmcons_init(void)
 {
-       tty_port_init(&srmcons_singleton.port);
        setup_timer(&srmcons_singleton.timer, srmcons_receive_chars,
                        (unsigned long)&srmcons_singleton);
        if (srm_is_registered_console) {
@@ -215,6 +214,9 @@ srmcons_init(void)
                driver = alloc_tty_driver(MAX_SRM_CONSOLE_DEVICES);
                if (!driver)
                        return -ENOMEM;
+
+               tty_port_init(&srmcons_singleton.port);
+
                driver->driver_name = "srm";
                driver->name = "srm";
                driver->major = 0;      /* dynamic */
@@ -227,6 +229,7 @@ srmcons_init(void)
                err = tty_register_driver(driver);
                if (err) {
                        put_tty_driver(driver);
+                       tty_port_destroy(&srmcons_singleton.port);
                        return err;
                }
                srmcons_driver = driver;
This page took 0.031377 seconds and 5 git commands to generate.