phy: Return success from generic_setup_phy() when phy is not found
Restore the old behavior of ehci_setup_phy() and ohci_setup_phy() to return success when generic_phy_get_by_index() return -ENOENT. Fixes:84e561407a("phy: Add generic_{setup,shutdown}_phy() helpers") Fixes:10005004db("usb: ohci: Make usage of generic_{setup,shutdown}_phy() helpers") Fixes:083f8aa978("usb: ehci: Make usage of generic_{setup,shutdown}_phy() helpers") Fixes:75341e9c16("usb: ehci: Remove unused ehci_{setup,shutdown}_phy() helpers") Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
This commit is contained in:
@@ -517,8 +517,8 @@ int generic_setup_phy(struct udevice *dev, struct phy *phy, int index)
|
||||
|
||||
ret = generic_phy_get_by_index(dev, index, phy);
|
||||
if (ret) {
|
||||
if (ret != -ENOENT)
|
||||
return ret;
|
||||
if (ret == -ENOENT)
|
||||
return 0;
|
||||
} else {
|
||||
ret = generic_phy_init(phy);
|
||||
if (ret)
|
||||
|
||||
@@ -255,6 +255,11 @@ static int dm_test_phy_setup(struct unit_test_state *uts)
|
||||
ut_asserteq(-EIO, generic_setup_phy(parent, &phy, 2));
|
||||
ut_assertok(generic_shutdown_phy(&phy));
|
||||
|
||||
/* generic_phy_get_by_index fail with -ENOENT */
|
||||
ut_asserteq(-ENOENT, generic_phy_get_by_index(parent, 3, &phy));
|
||||
ut_assertok(generic_setup_phy(parent, &phy, 3));
|
||||
ut_assertok(generic_shutdown_phy(&phy));
|
||||
|
||||
return 0;
|
||||
}
|
||||
DM_TEST(dm_test_phy_setup, UT_TESTF_SCAN_PDATA | UT_TESTF_SCAN_FDT);
|
||||
|
||||
Reference in New Issue
Block a user