serial: 8250_omap: Fix probe and remove for PM runtime
authorTony Lindgren <tony@atomide.com>
Fri, 20 Jan 2017 20:22:31 +0000 (12:22 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 25 Jan 2017 10:08:30 +0000 (11:08 +0100)
commit4e0f5cc65098ea32a1e77baae74215b9bd5276b1
tree09d9e213dacb39954c0cfeb6279a4701a2cc3f18
parentf99b63afb943c920bde71bf69880be5578c4c4f6
serial: 8250_omap: Fix probe and remove for PM runtime

Otherwise the interconnect related code implementing PM runtime will
produce these errors on a failed probe:

omap_uart 48066000.serial: omap_device: omap_device_enable() called from invalid state 1
omap_uart 48066000.serial: use pm_runtime_put_sync_suspend() in driver?

Note that we now also need to check for priv in omap8250_runtime_suspend()
as it has not yet been registered if probe fails. And we need to use
pm_runtime_put_sync() to properly idle the device like we already do
in omap8250_remove().

Fixes: 61929cf0169d ("tty: serial: Add 8250-core based omap driver")
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/8250/8250_omap.c