forked from luck/tmp_suning_uos_patched
phy-rockchip-pcie: remove deassert of phy_rst from exit callback
The deassert of phy_rst from exit callback is incorrect as when doing phy_exit, we expect the phy_rst is on asserted state which was done by power_off callback, but not deasserted state. Meanwhile when disabling clk_pciephy_ref, the assert/deassert signal can't actually take effect on the phy. So let's fix it anyway. Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com> Reviewed-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
This commit is contained in:
parent
766325427f
commit
232c260982
|
@ -249,21 +249,10 @@ static int rockchip_pcie_phy_init(struct phy *phy)
|
|||
static int rockchip_pcie_phy_exit(struct phy *phy)
|
||||
{
|
||||
struct rockchip_pcie_phy *rk_phy = phy_get_drvdata(phy);
|
||||
int err = 0;
|
||||
|
||||
clk_disable_unprepare(rk_phy->clk_pciephy_ref);
|
||||
|
||||
err = reset_control_deassert(rk_phy->phy_rst);
|
||||
if (err) {
|
||||
dev_err(&phy->dev, "deassert phy_rst err %d\n", err);
|
||||
goto err_reset;
|
||||
}
|
||||
|
||||
return err;
|
||||
|
||||
err_reset:
|
||||
clk_prepare_enable(rk_phy->clk_pciephy_ref);
|
||||
return err;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static const struct phy_ops ops = {
|
||||
|
|
Loading…
Reference in New Issue
Block a user