Commit d1bdf06f authored by Johan Hovold's avatar Johan Hovold Committed by Ben Hutchings

serial: omap: suspend device on probe errors

commit 77e6fe7f upstream.

Make sure to actually suspend the device before returning after a failed
(or deferred) probe.

Note that autosuspend must be disabled before runtime pm is disabled in
order to balance the usage count due to a negative autosuspend delay as
well as to make the final put suspend the device synchronously.

Fixes: 388bc262 ("omap-serial: Fix the error handling in the omap_serial probe")
Cc: Shubhrajyoti D <shubhrajyoti@ti.com>
Signed-off-by: default avatarJohan Hovold <johan@kernel.org>
Acked-by: default avatarTony Lindgren <tony@atomide.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: default avatarBen Hutchings <ben@decadent.org.uk>
parent 4416db1b
...@@ -1741,7 +1741,8 @@ static int serial_omap_probe(struct platform_device *pdev) ...@@ -1741,7 +1741,8 @@ static int serial_omap_probe(struct platform_device *pdev)
return 0; return 0;
err_add_port: err_add_port:
pm_runtime_put(&pdev->dev); pm_runtime_dont_use_autosuspend(&pdev->dev);
pm_runtime_put_sync(&pdev->dev);
pm_runtime_disable(&pdev->dev); pm_runtime_disable(&pdev->dev);
err_rs485: err_rs485:
err_port_line: err_port_line:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment