
Refactor generic_{setup,shutdown}_phy() to reduce complexity and indentation. This have no intended functional change.
Signed-off-by: Jonas Karlman jonas@kwiboo.se --- v2: - Split code refactor into own patch
drivers/phy/phy-uclass.c | 41 ++++++++++++++++------------------------ 1 file changed, 16 insertions(+), 25 deletions(-)
diff --git a/drivers/phy/phy-uclass.c b/drivers/phy/phy-uclass.c index 343c23cead0c..190108e04c7f 100644 --- a/drivers/phy/phy-uclass.c +++ b/drivers/phy/phy-uclass.c @@ -510,44 +510,35 @@ int generic_phy_power_off_bulk(struct phy_bulk *bulk)
int generic_setup_phy(struct udevice *dev, struct phy *phy, int index) { - int ret = 0; - - if (!phy) - return 0; + int ret;
ret = generic_phy_get_by_index(dev, index, phy); - if (ret) { - if (ret == -ENOENT) - return 0; - } else { - ret = generic_phy_init(phy); - if (ret) - return ret; + if (ret) + return ret == -ENOENT ? 0 : ret;
- ret = generic_phy_power_on(phy); - if (ret) - generic_phy_exit(phy); - } + ret = generic_phy_init(phy); + if (ret) + return ret; + + ret = generic_phy_power_on(phy); + if (ret) + generic_phy_exit(phy);
return ret; }
int generic_shutdown_phy(struct phy *phy) { - int ret = 0; + int ret;
- if (!phy) + if (!generic_phy_valid(phy)) return 0;
- if (generic_phy_valid(phy)) { - ret = generic_phy_power_off(phy); - if (ret) - return ret; - - ret = generic_phy_exit(phy); - } + ret = generic_phy_power_off(phy); + if (ret) + return ret;
- return ret; + return generic_phy_exit(phy); }
UCLASS_DRIVER(phy) = {