aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/freescale
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2011-12-16 02:11:14 -0500
committerDavid S. Miller <davem@davemloft.net>2011-12-16 02:11:14 -0500
commitb26e478f8fd5b575684f021b05a5c6236ebb911a (patch)
tree27d3b3eaf3fe10d05319ad3395b2569ad5f8f6d0 /drivers/net/ethernet/freescale
parentbcebcc468a6bcd3820fe9ad36b34220563efc93a (diff)
parentbb3c36863e8001fc21a88bebfdead4da4c23e848 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts: drivers/net/ethernet/freescale/fsl_pq_mdio.c net/batman-adv/translation-table.c net/ipv6/route.c
Diffstat (limited to 'drivers/net/ethernet/freescale')
-rw-r--r--drivers/net/ethernet/freescale/fec.c11
-rw-r--r--drivers/net/ethernet/freescale/fsl_pq_mdio.c13
2 files changed, 13 insertions, 11 deletions
diff --git a/drivers/net/ethernet/freescale/fec.c b/drivers/net/ethernet/freescale/fec.c
index 01ee9cc417b2..4ea2bdc852f8 100644
--- a/drivers/net/ethernet/freescale/fec.c
+++ b/drivers/net/ethernet/freescale/fec.c
@@ -232,6 +232,7 @@ struct fec_enet_private {
232 struct platform_device *pdev; 232 struct platform_device *pdev;
233 233
234 int opened; 234 int opened;
235 int dev_id;
235 236
236 /* Phylib and MDIO interface */ 237 /* Phylib and MDIO interface */
237 struct mii_bus *mii_bus; 238 struct mii_bus *mii_bus;
@@ -842,7 +843,7 @@ static void __inline__ fec_get_mac(struct net_device *ndev)
842 843
843 /* Adjust MAC if using macaddr */ 844 /* Adjust MAC if using macaddr */
844 if (iap == macaddr) 845 if (iap == macaddr)
845 ndev->dev_addr[ETH_ALEN-1] = macaddr[ETH_ALEN-1] + fep->pdev->id; 846 ndev->dev_addr[ETH_ALEN-1] = macaddr[ETH_ALEN-1] + fep->dev_id;
846} 847}
847 848
848/* ------------------------------------------------------------------------- */ 849/* ------------------------------------------------------------------------- */
@@ -960,7 +961,7 @@ static int fec_enet_mii_probe(struct net_device *ndev)
960 char mdio_bus_id[MII_BUS_ID_SIZE]; 961 char mdio_bus_id[MII_BUS_ID_SIZE];
961 char phy_name[MII_BUS_ID_SIZE + 3]; 962 char phy_name[MII_BUS_ID_SIZE + 3];
962 int phy_id; 963 int phy_id;
963 int dev_id = fep->pdev->id; 964 int dev_id = fep->dev_id;
964 965
965 fep->phy_dev = NULL; 966 fep->phy_dev = NULL;
966 967
@@ -1040,7 +1041,7 @@ static int fec_enet_mii_init(struct platform_device *pdev)
1040 * mdio interface in board design, and need to be configured by 1041 * mdio interface in board design, and need to be configured by
1041 * fec0 mii_bus. 1042 * fec0 mii_bus.
1042 */ 1043 */
1043 if ((id_entry->driver_data & FEC_QUIRK_ENET_MAC) && pdev->id > 0) { 1044 if ((id_entry->driver_data & FEC_QUIRK_ENET_MAC) && fep->dev_id > 0) {
1044 /* fec1 uses fec0 mii_bus */ 1045 /* fec1 uses fec0 mii_bus */
1045 if (mii_cnt && fec0_mii_bus) { 1046 if (mii_cnt && fec0_mii_bus) {
1046 fep->mii_bus = fec0_mii_bus; 1047 fep->mii_bus = fec0_mii_bus;
@@ -1076,7 +1077,7 @@ static int fec_enet_mii_init(struct platform_device *pdev)
1076 fep->mii_bus->read = fec_enet_mdio_read; 1077 fep->mii_bus->read = fec_enet_mdio_read;
1077 fep->mii_bus->write = fec_enet_mdio_write; 1078 fep->mii_bus->write = fec_enet_mdio_write;
1078 fep->mii_bus->reset = fec_enet_mdio_reset; 1079 fep->mii_bus->reset = fec_enet_mdio_reset;
1079 snprintf(fep->mii_bus->id, MII_BUS_ID_SIZE, "%x", pdev->id + 1); 1080 snprintf(fep->mii_bus->id, MII_BUS_ID_SIZE, "%x", fep->dev_id + 1);
1080 fep->mii_bus->priv = fep; 1081 fep->mii_bus->priv = fep;
1081 fep->mii_bus->parent = &pdev->dev; 1082 fep->mii_bus->parent = &pdev->dev;
1082 1083
@@ -1536,6 +1537,7 @@ fec_probe(struct platform_device *pdev)
1536 int i, irq, ret = 0; 1537 int i, irq, ret = 0;
1537 struct resource *r; 1538 struct resource *r;
1538 const struct of_device_id *of_id; 1539 const struct of_device_id *of_id;
1540 static int dev_id;
1539 1541
1540 of_id = of_match_device(fec_dt_ids, &pdev->dev); 1542 of_id = of_match_device(fec_dt_ids, &pdev->dev);
1541 if (of_id) 1543 if (of_id)
@@ -1563,6 +1565,7 @@ fec_probe(struct platform_device *pdev)
1563 1565
1564 fep->hwp = ioremap(r->start, resource_size(r)); 1566 fep->hwp = ioremap(r->start, resource_size(r));
1565 fep->pdev = pdev; 1567 fep->pdev = pdev;
1568 fep->dev_id = dev_id++;
1566 1569
1567 if (!fep->hwp) { 1570 if (!fep->hwp) {
1568 ret = -ENOMEM; 1571 ret = -ENOMEM;
diff --git a/drivers/net/ethernet/freescale/fsl_pq_mdio.c b/drivers/net/ethernet/freescale/fsl_pq_mdio.c
index f1096027b186..9eb815941df5 100644
--- a/drivers/net/ethernet/freescale/fsl_pq_mdio.c
+++ b/drivers/net/ethernet/freescale/fsl_pq_mdio.c
@@ -356,14 +356,13 @@ static int fsl_pq_mdio_probe(struct platform_device *ofdev)
356 356
357 if (prop) 357 if (prop)
358 tbiaddr = *prop; 358 tbiaddr = *prop;
359 }
359 360
360 if (tbiaddr == -1) { 361 if (tbiaddr == -1) {
361 err = -EBUSY; 362 err = -EBUSY;
362 363 goto err_free_irqs;
363 goto err_free_irqs; 364 } else {
364 } else { 365 out_be32(tbipa, tbiaddr);
365 out_be32(tbipa, tbiaddr);
366 }
367 } 366 }
368 367
369 err = of_mdiobus_register(new_bus, np); 368 err = of_mdiobus_register(new_bus, np);