|
|
@@ -0,0 +1,23 @@
|
|
|
+--- a/drivers/net/phy/ar40xx.c
|
|
|
++++ b/drivers/net/phy/ar40xx.c
|
|
|
+@@ -2021,6 +2021,12 @@ static int ar40xx_probe(struct platform_
|
|
|
+ /* register switch */
|
|
|
+ swdev = &priv->dev;
|
|
|
+
|
|
|
++ if (priv->mii_bus == NULL) {
|
|
|
++ dev_err(&pdev->dev, "Probe failed - Missing PHYs!\n");
|
|
|
++ ret = -ENODEV;
|
|
|
++ goto err_missing_phy;
|
|
|
++ }
|
|
|
++
|
|
|
+ swdev->alias = dev_name(&priv->mii_bus->dev);
|
|
|
+
|
|
|
+ swdev->cpu_port = AR40XX_PORT_CPU;
|
|
|
+@@ -2052,6 +2058,7 @@ err_unregister_switch:
|
|
|
+ unregister_switch(&priv->dev);
|
|
|
+ err_unregister_phy:
|
|
|
+ phy_driver_unregister(&ar40xx_phy_driver);
|
|
|
++err_missing_phy:
|
|
|
+ platform_set_drvdata(pdev, NULL);
|
|
|
+ return ret;
|
|
|
+ }
|