aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c24
-rw-r--r--target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c20
2 files changed, 21 insertions, 23 deletions
diff --git a/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c b/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c
index fc6be0e001..f4d6735349 100644
--- a/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c
+++ b/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c
@@ -1178,16 +1178,6 @@ static int ag71xx_probe(struct platform_device *pdev)
netif_napi_add(dev, &ag->napi, ag71xx_poll, AG71XX_NAPI_WEIGHT);
- err = register_netdev(dev);
- if (err) {
- dev_err(&pdev->dev, "unable to register net device\n");
- goto err_free_desc;
- }
-
- pr_info("%s: Atheros AG71xx at 0x%08lx, irq %d, mode:%s\n",
- dev->name, dev->base_addr, dev->irq,
- ag71xx_get_phy_if_mode_name(pdata->phy_if_mode));
-
ag71xx_dump_regs(ag);
ag71xx_hw_init(ag);
@@ -1196,7 +1186,7 @@ static int ag71xx_probe(struct platform_device *pdev)
err = ag71xx_phy_connect(ag);
if (err)
- goto err_unregister_netdev;
+ goto err_free_desc;
err = ag71xx_debugfs_init(ag);
if (err)
@@ -1204,12 +1194,20 @@ static int ag71xx_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, dev);
+ err = register_netdev(dev);
+ if (err) {
+ dev_err(&pdev->dev, "unable to register net device\n");
+ goto err_phy_disconnect;
+ }
+
+ pr_info("%s: Atheros AG71xx at 0x%08lx, irq %d, mode:%s\n",
+ dev->name, dev->base_addr, dev->irq,
+ ag71xx_get_phy_if_mode_name(pdata->phy_if_mode));
+
return 0;
err_phy_disconnect:
ag71xx_phy_disconnect(ag);
-err_unregister_netdev:
- unregister_netdev(dev);
err_free_desc:
dma_free_coherent(NULL, sizeof(struct ag71xx_desc), ag->stop_desc,
ag->stop_desc_dma);
diff --git a/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c b/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c
index f3791e28b2..9de77e924b 100644
--- a/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c
+++ b/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_phy.c
@@ -76,7 +76,7 @@ void ag71xx_phy_stop(struct ag71xx *ag)
static int ag71xx_phy_connect_fixed(struct ag71xx *ag)
{
- struct net_device *dev = ag->dev;
+ struct device *dev = &ag->pdev->dev;
struct ag71xx_platform_data *pdata = ag71xx_get_pdata(ag);
int ret = 0;
@@ -87,12 +87,12 @@ static int ag71xx_phy_connect_fixed(struct ag71xx *ag)
case SPEED_1000:
break;
default:
- netdev_err(dev, "invalid speed specified\n");
+ dev_err(dev, "invalid speed specified\n");
ret = -EINVAL;
break;
}
- netdev_dbg(dev, "using fixed link parameters\n");
+ dev_dbg(dev, "using fixed link parameters\n");
ag->duplex = pdata->duplex;
ag->speed = pdata->speed;
@@ -102,7 +102,7 @@ static int ag71xx_phy_connect_fixed(struct ag71xx *ag)
static int ag71xx_phy_connect_multi(struct ag71xx *ag)
{
- struct net_device *dev = ag->dev;
+ struct device *dev = &ag->pdev->dev;
struct ag71xx_platform_data *pdata = ag71xx_get_pdata(ag);
struct phy_device *phydev = NULL;
int phy_addr;
@@ -116,7 +116,7 @@ static int ag71xx_phy_connect_multi(struct ag71xx *ag)
continue;
DBG("%s: PHY found at %s, uid=%08x\n",
- dev->name,
+ dev_name(dev),
dev_name(&ag->mii_bus->phy_map[phy_addr]->dev),
ag->mii_bus->phy_map[phy_addr]->phy_id);
@@ -125,17 +125,17 @@ static int ag71xx_phy_connect_multi(struct ag71xx *ag)
}
if (!phydev) {
- netdev_err(dev, "no PHY found with phy_mask=%08x\n",
+ dev_err(dev, "no PHY found with phy_mask=%08x\n",
pdata->phy_mask);
return -ENODEV;
}
- ag->phy_dev = phy_connect(dev, dev_name(&phydev->dev),
+ ag->phy_dev = phy_connect(ag->dev, dev_name(&phydev->dev),
&ag71xx_phy_link_adjust,
pdata->phy_if_mode);
if (IS_ERR(ag->phy_dev)) {
- netdev_err(dev, "could not connect to PHY at %s\n",
+ dev_err(dev, "could not connect to PHY at %s\n",
dev_name(&phydev->dev));
return PTR_ERR(ag->phy_dev);
}
@@ -148,7 +148,7 @@ static int ag71xx_phy_connect_multi(struct ag71xx *ag)
phydev->advertising = phydev->supported;
- netdev_info(dev, "connected to PHY at %s [uid=%08x, driver=%s]\n",
+ dev_info(dev, "connected to PHY at %s [uid=%08x, driver=%s]\n",
dev_name(&phydev->dev), phydev->phy_id, phydev->drv->name);
ag->link = 0;
@@ -203,7 +203,7 @@ int ag71xx_phy_connect(struct ag71xx *ag)
ag->mii_bus = dev_to_mii_bus(pdata->mii_bus_dev);
if (ag->mii_bus == NULL) {
- netdev_err(ag->dev, "unable to find MII bus on device '%s'\n",
+ dev_err(&ag->pdev->dev, "unable to find MII bus on device '%s'\n",
dev_name(pdata->mii_bus_dev));
return -ENODEV;
}