diff options
author | Kishon Vijay Abraham I <kishon@ti.com> | 2014-10-31 11:34:20 +0300 |
---|---|---|
committer | Kishon Vijay Abraham I <kishon@ti.com> | 2014-11-12 16:10:13 +0300 |
commit | 491e049064a4ea69ba4b35bdf614f12bc762a717 (patch) | |
tree | bdf4fb0cf3150f2e52da2aa0c1a521a9f9ecbede | |
parent | 28ba384dc5e42a23328dca7e5e72d19e2dd4c9ce (diff) | |
download | linux-491e049064a4ea69ba4b35bdf614f12bc762a717.tar.xz |
phy: phy-core: use the np present in of_phandle_args to get the PHY
Instead of using the node pointer of the PHY provider and then scanning its
child nodes to get a reference to the PHY, directly use the node pointer
present in of_phandle_args to get a reference to the PHY.
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
-rw-r--r-- | drivers/phy/phy-core.c | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/drivers/phy/phy-core.c b/drivers/phy/phy-core.c index ff5eec5af817..1606ce9805d0 100644 --- a/drivers/phy/phy-core.c +++ b/drivers/phy/phy-core.c @@ -414,21 +414,13 @@ struct phy *of_phy_simple_xlate(struct device *dev, struct of_phandle_args { struct phy *phy; struct class_dev_iter iter; - struct device_node *node = dev->of_node; - struct device_node *child; class_dev_iter_init(&iter, phy_class, NULL, NULL); while ((dev = class_dev_iter_next(&iter))) { phy = to_phy(dev); - if (node != phy->dev.of_node) { - for_each_child_of_node(node, child) { - if (child == phy->dev.of_node) - goto phy_found; - } + if (args->np != phy->dev.of_node) continue; - } -phy_found: class_dev_iter_exit(&iter); return phy; } |