mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2024-12-29 17:22:07 +00:00
phy: broadcom: brcm-sata: Simplify with scoped for each OF child loop
Use scoped for_each_available_child_of_node_scoped() when iterating over device nodes to make code a bit simpler. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com> Link: https://lore.kernel.org/r/20240826-phy-of-node-scope-v1-2-5b4d82582644@linaro.org Signed-off-by: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
e33525de6c
commit
a7f1dbf479
@ -751,11 +751,11 @@ static int brcm_sata_phy_probe(struct platform_device *pdev)
|
||||
{
|
||||
const char *rxaeq_mode;
|
||||
struct device *dev = &pdev->dev;
|
||||
struct device_node *dn = dev->of_node, *child;
|
||||
struct device_node *dn = dev->of_node;
|
||||
const struct of_device_id *of_id;
|
||||
struct brcm_sata_phy *priv;
|
||||
struct phy_provider *provider;
|
||||
int ret, count = 0;
|
||||
int count = 0;
|
||||
|
||||
if (of_get_child_count(dn) == 0)
|
||||
return -ENODEV;
|
||||
@ -782,26 +782,23 @@ static int brcm_sata_phy_probe(struct platform_device *pdev)
|
||||
return PTR_ERR(priv->ctrl_base);
|
||||
}
|
||||
|
||||
for_each_available_child_of_node(dn, child) {
|
||||
for_each_available_child_of_node_scoped(dn, child) {
|
||||
unsigned int id;
|
||||
struct brcm_sata_port *port;
|
||||
|
||||
if (of_property_read_u32(child, "reg", &id)) {
|
||||
dev_err(dev, "missing reg property in node %pOFn\n",
|
||||
child);
|
||||
ret = -EINVAL;
|
||||
goto put_child;
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (id >= MAX_PORTS) {
|
||||
dev_err(dev, "invalid reg: %u\n", id);
|
||||
ret = -EINVAL;
|
||||
goto put_child;
|
||||
return -EINVAL;
|
||||
}
|
||||
if (priv->phys[id].phy) {
|
||||
dev_err(dev, "already registered port %u\n", id);
|
||||
ret = -EINVAL;
|
||||
goto put_child;
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
port = &priv->phys[id];
|
||||
@ -822,8 +819,7 @@ static int brcm_sata_phy_probe(struct platform_device *pdev)
|
||||
port->ssc_en = of_property_read_bool(child, "brcm,enable-ssc");
|
||||
if (IS_ERR(port->phy)) {
|
||||
dev_err(dev, "failed to create PHY\n");
|
||||
ret = PTR_ERR(port->phy);
|
||||
goto put_child;
|
||||
return PTR_ERR(port->phy);
|
||||
}
|
||||
|
||||
phy_set_drvdata(port->phy, port);
|
||||
@ -839,9 +835,6 @@ static int brcm_sata_phy_probe(struct platform_device *pdev)
|
||||
dev_info(dev, "registered %d port(s)\n", count);
|
||||
|
||||
return 0;
|
||||
put_child:
|
||||
of_node_put(child);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static struct platform_driver brcm_sata_phy_driver = {
|
||||
|
Loading…
Reference in New Issue
Block a user