From: Shubhrajyoti Datta Date: Tue, 16 Oct 2018 10:18:04 +0000 (+0530) Subject: serial-uartlite: Fix the unbind path X-Git-Tag: rel_imx_5.10.35_2.0.0-somdevices.0~5632^2~72 X-Git-Url: https://git.somdevices.com/?a=commitdiff_plain;h=b312f6f4ac84bcd9587fd24316b5de7c3f319b88;p=linux.git serial-uartlite: Fix the unbind path Currently the clocks are not enabled at probe but when the port is used. Remove the unconditional disable at remove. Fixes the below [ 77.660196] ------------[ cut here ]------------ [ 77.664749] WARNING: CPU: 0 PID: 1992 at drivers/clk/clk.c:622 clk_core_disable+0x78/0x80 [ 77.672892] Modules linked in: [ 77.675930] CPU: 0 PID: 1992 Comm: sh Not tainted 4.14.0 #23 [ 77.681570] Hardware name: xlnx,zynqmp (DT) [ 77.685736] task: ffffffc879e2e580 task.stack: ffffff800be30000 [ 77.691641] PC is at clk_core_disable+0x78/0x80 Signed-off-by: Shubhrajyoti Datta Signed-off-by: Michal Simek Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/tty/serial/uartlite.c b/drivers/tty/serial/uartlite.c index 58296ebb9f7e..4a7989df5ff5 100644 --- a/drivers/tty/serial/uartlite.c +++ b/drivers/tty/serial/uartlite.c @@ -857,7 +857,7 @@ static int ulite_remove(struct platform_device *pdev) struct uartlite_data *pdata = port->private_data; int rc; - clk_disable_unprepare(pdata->clk); + clk_unprepare(pdata->clk); rc = ulite_release(&pdev->dev); pm_runtime_disable(&pdev->dev); pm_runtime_set_suspended(&pdev->dev);