]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
serial: milbeaut_usio: Fix error handling in probe and remove
authorWei Yongjun <weiyongjun1@huawei.com>
Thu, 25 Apr 2019 15:10:44 +0000 (15:10 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 29 Apr 2019 14:20:24 +0000 (16:20 +0200)
devm_clk_get() is used so there is no reason to explicitly call
clk_put() in probe or remove functions. Also remove duplicate assign
for port->membase.

Fixes: ba44dc043004 ("serial: Add Milbeaut serial control")
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Tested-by: Sugaya Taichi <sugaya.taichi@socionext.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/milbeaut_usio.c

index 4a10604211bec12debef2ff58e8ef1240e1563a2..949ab7efc4fcd803862bc68d16c05c41423dc7e4 100644 (file)
@@ -525,8 +525,6 @@ static int mlb_usio_probe(struct platform_device *pdev)
                ret = -ENODEV;
                goto failed;
        }
-       port->mapbase = res->start;
-       port->membase = ioremap(res->start, (res->end - res->start + 1));
        port->membase = devm_ioremap(&pdev->dev, res->start,
                                resource_size(res));
 
@@ -548,16 +546,12 @@ static int mlb_usio_probe(struct platform_device *pdev)
        ret = uart_add_one_port(&mlb_usio_uart_driver, port);
        if (ret) {
                dev_err(&pdev->dev, "Adding port failed: %d\n", ret);
-               goto failed1;
+               goto failed;
        }
        return 0;
 
-failed1:
-       iounmap(port->membase);
-
 failed:
        clk_disable_unprepare(clk);
-       clk_put(clk);
 
        return ret;
 }
@@ -569,7 +563,6 @@ static int mlb_usio_remove(struct platform_device *pdev)
 
        uart_remove_one_port(&mlb_usio_uart_driver, port);
        clk_disable_unprepare(clk);
-       clk_put(clk);
 
        return 0;
 }