net: tftp: use IS_ENABLED(CONFIG_NET_TFTP_VARS) instead of #if
[platform/kernel/u-boot.git] / net / dsa-uclass.c
index 606b153..5b70464 100644 (file)
@@ -432,7 +432,7 @@ static int dsa_post_bind(struct udevice *dev)
                 * skip registration if port id not found or if the port
                 * is explicitly disabled in DT
                 */
-               if (!ofnode_valid(pnode) || !ofnode_is_available(pnode))
+               if (!ofnode_valid(pnode) || !ofnode_is_enabled(pnode))
                        continue;
 
                err = device_bind_driver_to_node(dev, DSA_PORT_CHILD_DRV_NAME,
@@ -466,6 +466,8 @@ static int dsa_pre_probe(struct udevice *dev)
 {
        struct dsa_pdata *pdata = dev_get_uclass_plat(dev);
        struct dsa_priv *priv = dev_get_uclass_priv(dev);
+       struct dsa_ops *ops = dsa_get_ops(dev);
+       int err;
 
        priv->num_ports = pdata->num_ports;
        priv->cpu_port = pdata->cpu_port;
@@ -475,8 +477,19 @@ static int dsa_pre_probe(struct udevice *dev)
                return -ENODEV;
        }
 
-       uclass_find_device_by_ofnode(UCLASS_ETH, pdata->master_node,
-                                    &priv->master_dev);
+       err = uclass_get_device_by_ofnode(UCLASS_ETH, pdata->master_node,
+                                         &priv->master_dev);
+       if (err)
+               return err;
+
+       /* Simulate a probing event for the CPU port */
+       if (ops->port_probe) {
+               err = ops->port_probe(dev, priv->cpu_port,
+                                     priv->cpu_port_fixed_phy);
+               if (err)
+                       return err;
+       }
+
        return 0;
 }