Generic code will use mdio. If it is not initialized before use,
the kernel will Oops.
Fixes: 30bba69d7db4 ("stmmac: pci: Add dwmac support for Loongson")
Signed-off-by: Yanteng Si <siyanteng@loongson.cn>
Signed-off-by: Feiyang Chen <chenfeiyang@loongson.cn>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
        if (!plat)
                return -ENOMEM;
 
+       plat->mdio_bus_data = devm_kzalloc(&pdev->dev,
+                                          sizeof(*plat->mdio_bus_data),
+                                          GFP_KERNEL);
+       if (!plat->mdio_bus_data)
+               return -ENOMEM;
+
        plat->mdio_node = of_get_child_by_name(np, "mdio");
        if (plat->mdio_node) {
                dev_info(&pdev->dev, "Found MDIO subnode\n");
-
-               plat->mdio_bus_data = devm_kzalloc(&pdev->dev,
-                                                  sizeof(*plat->mdio_bus_data),
-                                                  GFP_KERNEL);
-               if (!plat->mdio_bus_data) {
-                       ret = -ENOMEM;
-                       goto err_put_node;
-               }
                plat->mdio_bus_data->needs_reset = true;
        }