OSDN Git Service

phy: phy-core: use the np present in of_phandle_args to get the PHY
authorKishon Vijay Abraham I <kishon@ti.com>
Fri, 31 Oct 2014 08:34:20 +0000 (14:04 +0530)
committerKishon Vijay Abraham I <kishon@ti.com>
Wed, 12 Nov 2014 13:10:13 +0000 (18:40 +0530)
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>
drivers/phy/phy-core.c

index ff5eec5..1606ce9 100644 (file)
@@ -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;
        }