mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-11-27 01:11:31 +00:00
usb: host: ohci-exynos: Convert to devm_of_phy_optional_get()
Use the new devm_of_phy_optional_get() helper instead of open-coding the
same operation.
As devm_of_phy_optional_get() returns NULL if either the PHY cannot be
found, or if support for the PHY framework is not enabled, it is no
longer needed to check for -ENODEV or -ENOSYS.
This lets us drop several checks for IS_ERR(), as phy_power_{on,off}()
handle NULL parameters fine.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://lore.kernel.org/r/3adc5dd1149a17ea7daf4463549feab886c6b145.1674584626.git.geert+renesas@glider.be
Signed-off-by: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
86a176840c
commit
41a435e30e
1 changed files with 6 additions and 17 deletions
|
|
@ -69,19 +69,11 @@ static int exynos_ohci_get_phy(struct device *dev,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
phy = devm_of_phy_get(dev, child, NULL);
|
||||
phy = devm_of_phy_optional_get(dev, child, NULL);
|
||||
exynos_ohci->phy[phy_number] = phy;
|
||||
if (IS_ERR(phy)) {
|
||||
ret = PTR_ERR(phy);
|
||||
if (ret == -EPROBE_DEFER) {
|
||||
of_node_put(child);
|
||||
return ret;
|
||||
} else if (ret != -ENOSYS && ret != -ENODEV) {
|
||||
dev_err(dev,
|
||||
"Error retrieving usb2 phy: %d\n", ret);
|
||||
of_node_put(child);
|
||||
return ret;
|
||||
}
|
||||
of_node_put(child);
|
||||
return PTR_ERR(phy);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -97,12 +89,10 @@ static int exynos_ohci_phy_enable(struct device *dev)
|
|||
int ret = 0;
|
||||
|
||||
for (i = 0; ret == 0 && i < PHY_NUMBER; i++)
|
||||
if (!IS_ERR(exynos_ohci->phy[i]))
|
||||
ret = phy_power_on(exynos_ohci->phy[i]);
|
||||
ret = phy_power_on(exynos_ohci->phy[i]);
|
||||
if (ret)
|
||||
for (i--; i >= 0; i--)
|
||||
if (!IS_ERR(exynos_ohci->phy[i]))
|
||||
phy_power_off(exynos_ohci->phy[i]);
|
||||
phy_power_off(exynos_ohci->phy[i]);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
@ -114,8 +104,7 @@ static void exynos_ohci_phy_disable(struct device *dev)
|
|||
int i;
|
||||
|
||||
for (i = 0; i < PHY_NUMBER; i++)
|
||||
if (!IS_ERR(exynos_ohci->phy[i]))
|
||||
phy_power_off(exynos_ohci->phy[i]);
|
||||
phy_power_off(exynos_ohci->phy[i]);
|
||||
}
|
||||
|
||||
static int exynos_ohci_probe(struct platform_device *pdev)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue