int phy_node;
        int i = 0;
        uint32_t ph;
+       char *name[3] = { "eTSEC1", "eTSEC2", "eTSEC3" };
 
-       while ((dev = eth_get_dev_by_index(i++)) != NULL) {
-               if (strstr(dev->name, "eTSEC1")) {
-                       strcpy(enet, "ethernet0");
-                       strcpy(phy, "enet0_rgmii_phy");
-               } else if (strstr(dev->name, "eTSEC2")) {
-                       strcpy(enet, "ethernet1");
-                       strcpy(phy, "enet1_rgmii_phy");
-               } else if (strstr(dev->name, "eTSEC3")) {
-                       strcpy(enet, "ethernet2");
-                       strcpy(phy, "enet2_rgmii_phy");
+       for (; i < ARRAY_SIZE(name); i++) {
+               dev = eth_get_dev_by_name(name[i]);
+               if (dev) {
+                       sprintf(enet, "ethernet%d", i);
+                       sprintf(phy, "enet%d_rgmii_phy", i);
                } else {
                        continue;
                }