phy: ti-pipe3: fix suspend
authorRoger Quadros <rogerq@ti.com>
Tue, 2 Jun 2015 09:10:40 +0000 (12:10 +0300)
committerKishon Vijay Abraham I <kishon@ti.com>
Wed, 15 Jul 2015 14:32:09 +0000 (20:02 +0530)
commit0a0830feb2adce8c7234b8c166a32fe9e7616788
tree0a3677d1b6a3446334d144ca10c7038ffaa06999
parentd770e558e21961ad6cfdf0ff7df0eb5d7d4f0754
phy: ti-pipe3: fix suspend

Relying on PM-ops for shutting down PHY clocks was a
bad idea since the users (e.g. PCIe/SATA) might not
have been suspended by then.

The main culprit for not shutting down the clocks was
the stray pm_runtime_get() call in probe.

Fix the whole thing in the right way by getting rid
of that pm_runtime_get() call from probe and
removing all PM-ops. It is the sole responsibility
of the PHY user to properly turn OFF and de-initialize
the PHY as part of its suspend routine.

As PHY core serializes init/exit we don't need
to use a spinlock in this driver. So get rid of it.

Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
drivers/phy/phy-ti-pipe3.c