aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorAndrew Lunn <andrew@lunn.ch>2016-01-06 14:11:13 -0500
committerDavid S. Miller <davem@davemloft.net>2016-01-07 14:31:25 -0500
commit2220943a21e26d97d7fd8f83c004b947326b469d (patch)
tree946d1428fce5312b0537137411784c8b0c41c222 /drivers
parent053e7e169229adebbc27fc176c5369398e9f5eba (diff)
phy: Centralise print about attached phy
Many Ethernet drivers contain the same netdev_info() print statement about the attached phy. Move it into the phy device code. Additionally add a varargs function which can be used to append additional information. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/ethernet/adi/bfin_mac.c6
-rw-r--r--drivers/net/ethernet/agere/et131x.c4
-rw-r--r--drivers/net/ethernet/amd/au1000_eth.c4
-rw-r--r--drivers/net/ethernet/broadcom/b44.c3
-rw-r--r--drivers/net/ethernet/broadcom/bcm63xx_enet.c3
-rw-r--r--drivers/net/ethernet/broadcom/sb1250-mac.c7
-rw-r--r--drivers/net/ethernet/broadcom/tg3.c10
-rw-r--r--drivers/net/ethernet/cadence/macb.c3
-rw-r--r--drivers/net/ethernet/dnet.c4
-rw-r--r--drivers/net/ethernet/freescale/fec_main.c4
-rw-r--r--drivers/net/ethernet/lantiq_etop.c4
-rw-r--r--drivers/net/ethernet/nxp/lpc_eth.c5
-rw-r--r--drivers/net/ethernet/rdc/r6040.c4
-rw-r--r--drivers/net/ethernet/renesas/ravb_main.c3
-rw-r--r--drivers/net/ethernet/renesas/sh_eth.c3
-rw-r--r--drivers/net/ethernet/smsc/smsc911x.c4
-rw-r--r--drivers/net/ethernet/smsc/smsc9420.c9
-rw-r--r--drivers/net/ethernet/synopsys/dwc_eth_qos.c12
-rw-r--r--drivers/net/ethernet/ti/cpsw.c4
-rw-r--r--drivers/net/ethernet/ti/davinci_emac.c5
-rw-r--r--drivers/net/ethernet/toshiba/tc35815.c6
-rw-r--r--drivers/net/phy/phy_device.c27
-rw-r--r--drivers/staging/netlogic/xlr_net.c3
23 files changed, 58 insertions, 79 deletions
diff --git a/drivers/net/ethernet/adi/bfin_mac.c b/drivers/net/ethernet/adi/bfin_mac.c
index 5f8a5182b8dc..ed5c78cb7239 100644
--- a/drivers/net/ethernet/adi/bfin_mac.c
+++ b/drivers/net/ethernet/adi/bfin_mac.c
@@ -444,10 +444,8 @@ static int mii_probe(struct net_device *dev, int phy_mode)
444 lp->old_duplex = -1; 444 lp->old_duplex = -1;
445 lp->phydev = phydev; 445 lp->phydev = phydev;
446 446
447 pr_info("attached PHY driver [%s] " 447 phy_attached_print(phydev, "mdc_clk=%dHz(mdc_div=%d)@sclk=%dMHz)\n",
448 "(mii_bus:phy_addr=%s, irq=%d, mdc_clk=%dHz(mdc_div=%d)@sclk=%dMHz)\n", 448 MDC_CLK, mdc_div, sclk / 1000000);
449 phydev->drv->name, phydev_name(phydev), phydev->irq,
450 MDC_CLK, mdc_div, sclk/1000000);
451 449
452 return 0; 450 return 0;
453} 451}
diff --git a/drivers/net/ethernet/agere/et131x.c b/drivers/net/ethernet/agere/et131x.c
index 80b706f0fc97..825da3af806a 100644
--- a/drivers/net/ethernet/agere/et131x.c
+++ b/drivers/net/ethernet/agere/et131x.c
@@ -3289,9 +3289,7 @@ static int et131x_mii_probe(struct net_device *netdev)
3289 phydev->autoneg = AUTONEG_ENABLE; 3289 phydev->autoneg = AUTONEG_ENABLE;
3290 adapter->phydev = phydev; 3290 adapter->phydev = phydev;
3291 3291
3292 dev_info(&adapter->pdev->dev, 3292 phy_attached_info(phydev);
3293 "attached PHY driver [%s] (mii_bus:phy_addr=%s)\n",
3294 phydev->drv->name, phydev_name(phydev));
3295 3293
3296 return 0; 3294 return 0;
3297} 3295}
diff --git a/drivers/net/ethernet/amd/au1000_eth.c b/drivers/net/ethernet/amd/au1000_eth.c
index 8a8d6f2a0f6f..114618d357d5 100644
--- a/drivers/net/ethernet/amd/au1000_eth.c
+++ b/drivers/net/ethernet/amd/au1000_eth.c
@@ -583,9 +583,7 @@ static int au1000_mii_probe(struct net_device *dev)
583 aup->old_duplex = -1; 583 aup->old_duplex = -1;
584 aup->phy_dev = phydev; 584 aup->phy_dev = phydev;
585 585
586 netdev_info(dev, "attached PHY driver [%s] " 586 phy_attached_info(phydev);
587 "(mii_bus:phy_addr=%s, irq=%d)\n",
588 phydev->drv->name, phydev_name(phydev), phydev->irq);
589 587
590 return 0; 588 return 0;
591} 589}
diff --git a/drivers/net/ethernet/broadcom/b44.c b/drivers/net/ethernet/broadcom/b44.c
index 928a2210e788..e7d9308d6760 100644
--- a/drivers/net/ethernet/broadcom/b44.c
+++ b/drivers/net/ethernet/broadcom/b44.c
@@ -2315,8 +2315,7 @@ static int b44_register_phy_one(struct b44 *bp)
2315 bp->old_link = 0; 2315 bp->old_link = 0;
2316 bp->phy_addr = phydev->addr; 2316 bp->phy_addr = phydev->addr;
2317 2317
2318 dev_info(sdev->dev, "attached PHY driver [%s] (mii_bus:phy_addr=%s)\n", 2318 phy_attached_info(phydev);
2319 phydev->drv->name, phydev_name(phydev));
2320 2319
2321 return 0; 2320 return 0;
2322 2321
diff --git a/drivers/net/ethernet/broadcom/bcm63xx_enet.c b/drivers/net/ethernet/broadcom/bcm63xx_enet.c
index a54bafad3538..55f31faa09e6 100644
--- a/drivers/net/ethernet/broadcom/bcm63xx_enet.c
+++ b/drivers/net/ethernet/broadcom/bcm63xx_enet.c
@@ -908,8 +908,7 @@ static int bcm_enet_open(struct net_device *dev)
908 else 908 else
909 phydev->advertising &= ~SUPPORTED_Pause; 909 phydev->advertising &= ~SUPPORTED_Pause;
910 910
911 dev_info(kdev, "attached PHY at address %d [%s]\n", 911 phy_attached_info(phydev);
912 phydev->addr, phydev->drv->name);
913 912
914 priv->old_link = 0; 913 priv->old_link = 0;
915 priv->old_duplex = -1; 914 priv->old_duplex = -1;
diff --git a/drivers/net/ethernet/broadcom/sb1250-mac.c b/drivers/net/ethernet/broadcom/sb1250-mac.c
index f557a2aaec23..2470c6084c67 100644
--- a/drivers/net/ethernet/broadcom/sb1250-mac.c
+++ b/drivers/net/ethernet/broadcom/sb1250-mac.c
@@ -2388,11 +2388,10 @@ static int sbmac_mii_probe(struct net_device *dev)
2388 SUPPORTED_MII | 2388 SUPPORTED_MII |
2389 SUPPORTED_Pause | 2389 SUPPORTED_Pause |
2390 SUPPORTED_Asym_Pause; 2390 SUPPORTED_Asym_Pause;
2391 phy_dev->advertising = phy_dev->supported;
2392 2391
2393 pr_info("%s: attached PHY driver [%s] (mii_bus:phy_addr=%s, irq=%d)\n", 2392 phy_attached_info(phydev);
2394 dev->name, phy_dev->drv->name, 2393
2395 dev_name(&phy_dev->dev), phy_dev->irq); 2394 phy_dev->advertising = phy_dev->supported;
2396 2395
2397 sc->phy_dev = phy_dev; 2396 sc->phy_dev = phy_dev;
2398 2397
diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
index 69d84d67f09a..07c067590caa 100644
--- a/drivers/net/ethernet/broadcom/tg3.c
+++ b/drivers/net/ethernet/broadcom/tg3.c
@@ -2128,6 +2128,8 @@ static int tg3_phy_init(struct tg3 *tp)
2128 2128
2129 phydev->advertising = phydev->supported; 2129 phydev->advertising = phydev->supported;
2130 2130
2131 phy_attached_info(phydev);
2132
2131 return 0; 2133 return 0;
2132} 2134}
2133 2135
@@ -17898,13 +17900,7 @@ static int tg3_init_one(struct pci_dev *pdev,
17898 tg3_bus_string(tp, str), 17900 tg3_bus_string(tp, str),
17899 dev->dev_addr); 17901 dev->dev_addr);
17900 17902
17901 if (tp->phy_flags & TG3_PHYFLG_IS_CONNECTED) { 17903 if (!(tp->phy_flags & TG3_PHYFLG_IS_CONNECTED)) {
17902 struct phy_device *phydev;
17903 phydev = tp->mdio_bus->phy_map[tp->phy_addr];
17904 netdev_info(dev,
17905 "attached PHY driver [%s] (mii_bus:phy_addr=%s)\n",
17906 phydev->drv->name, phydev_name(phydev));
17907 } else {
17908 char *ethtype; 17904 char *ethtype;
17909 17905
17910 if (tp->phy_flags & TG3_PHYFLG_10_100_ONLY) 17906 if (tp->phy_flags & TG3_PHYFLG_10_100_ONLY)
diff --git a/drivers/net/ethernet/cadence/macb.c b/drivers/net/ethernet/cadence/macb.c
index 001d60c5521c..98df33b7a395 100644
--- a/drivers/net/ethernet/cadence/macb.c
+++ b/drivers/net/ethernet/cadence/macb.c
@@ -2950,8 +2950,7 @@ static int macb_probe(struct platform_device *pdev)
2950 dev->base_addr, dev->irq, dev->dev_addr); 2950 dev->base_addr, dev->irq, dev->dev_addr);
2951 2951
2952 phydev = bp->phy_dev; 2952 phydev = bp->phy_dev;
2953 netdev_info(dev, "attached PHY driver [%s] (mii_bus:phy_addr=%s, irq=%d)\n", 2953 phy_attached_info(phydev);
2954 phydev->drv->name, phydev_name(phydev), phydev->irq);
2955 2954
2956 return 0; 2955 return 0;
2957 2956
diff --git a/drivers/net/ethernet/dnet.c b/drivers/net/ethernet/dnet.c
index 0ec367521354..6557460cf028 100644
--- a/drivers/net/ethernet/dnet.c
+++ b/drivers/net/ethernet/dnet.c
@@ -886,9 +886,7 @@ static int dnet_probe(struct platform_device *pdev)
886 (bp->capabilities & DNET_HAS_GIGABIT) ? "" : "no ", 886 (bp->capabilities & DNET_HAS_GIGABIT) ? "" : "no ",
887 (bp->capabilities & DNET_HAS_DMA) ? "" : "no "); 887 (bp->capabilities & DNET_HAS_DMA) ? "" : "no ");
888 phydev = bp->phy_dev; 888 phydev = bp->phy_dev;
889 dev_info(&pdev->dev, "attached PHY driver [%s] " 889 phy_attached_info(phydev);
890 "(mii_bus:phy_addr=%s, irq=%d)\n",
891 phydev->drv->name, phydev_name(phydev), phydev->irq);
892 890
893 return 0; 891 return 0;
894 892
diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c
index d2328fc5da57..ceabe21b3b2c 100644
--- a/drivers/net/ethernet/freescale/fec_main.c
+++ b/drivers/net/ethernet/freescale/fec_main.c
@@ -1972,9 +1972,7 @@ static int fec_enet_mii_probe(struct net_device *ndev)
1972 fep->link = 0; 1972 fep->link = 0;
1973 fep->full_duplex = 0; 1973 fep->full_duplex = 0;
1974 1974
1975 netdev_info(ndev, "Freescale FEC PHY driver [%s] (mii_bus:phy_addr=%s, irq=%d)\n", 1975 phy_attached_info(phy_dev);
1976 fep->phy_dev->drv->name, dev_name(&fep->phy_dev->dev),
1977 fep->phy_dev->irq);
1978 1976
1979 return 0; 1977 return 0;
1980} 1978}
diff --git a/drivers/net/ethernet/lantiq_etop.c b/drivers/net/ethernet/lantiq_etop.c
index 274a3cec84c2..86238a5eaddf 100644
--- a/drivers/net/ethernet/lantiq_etop.c
+++ b/drivers/net/ethernet/lantiq_etop.c
@@ -408,9 +408,7 @@ ltq_etop_mdio_probe(struct net_device *dev)
408 408
409 phydev->advertising = phydev->supported; 409 phydev->advertising = phydev->supported;
410 priv->phydev = phydev; 410 priv->phydev = phydev;
411 pr_info("%s: attached PHY [%s] (phy_addr=%s, irq=%d)\n", 411 phy_attached_info(phydev);
412 dev->name, phydev->drv->name,
413 phydev_name(phydev), phydev->irq);
414 412
415 return 0; 413 return 0;
416} 414}
diff --git a/drivers/net/ethernet/nxp/lpc_eth.c b/drivers/net/ethernet/nxp/lpc_eth.c
index 5801aa197697..024bc3675573 100644
--- a/drivers/net/ethernet/nxp/lpc_eth.c
+++ b/drivers/net/ethernet/nxp/lpc_eth.c
@@ -816,9 +816,8 @@ static int lpc_mii_probe(struct net_device *ndev)
816 pldat->duplex = -1; 816 pldat->duplex = -1;
817 pldat->phy_dev = phydev; 817 pldat->phy_dev = phydev;
818 818
819 netdev_info(ndev, 819 phy_attached_info(phydev);
820 "attached PHY driver [%s] (mii_bus:phy_addr=%s, irq=%d)\n", 820
821 phydev->drv->name, phydev_name(phydev), phydev->irq);
822 return 0; 821 return 0;
823} 822}
824 823
diff --git a/drivers/net/ethernet/rdc/r6040.c b/drivers/net/ethernet/rdc/r6040.c
index 86a0887811c7..174dea787caf 100644
--- a/drivers/net/ethernet/rdc/r6040.c
+++ b/drivers/net/ethernet/rdc/r6040.c
@@ -1061,9 +1061,7 @@ static int r6040_mii_probe(struct net_device *dev)
1061 lp->old_link = 0; 1061 lp->old_link = 0;
1062 lp->old_duplex = -1; 1062 lp->old_duplex = -1;
1063 1063
1064 dev_info(&lp->pdev->dev, "attached PHY driver [%s] " 1064 phy_attached_info(phydev);
1065 "(mii_bus:phy_addr=%s)\n",
1066 phydev->drv->name, phydev_name(phydev));
1067 1065
1068 return 0; 1066 return 0;
1069} 1067}
diff --git a/drivers/net/ethernet/renesas/ravb_main.c b/drivers/net/ethernet/renesas/ravb_main.c
index 2f6c974e4a6d..9e20f37a3b6f 100644
--- a/drivers/net/ethernet/renesas/ravb_main.c
+++ b/drivers/net/ethernet/renesas/ravb_main.c
@@ -927,8 +927,7 @@ static int ravb_phy_init(struct net_device *ndev)
927 /* 10BASE is not supported */ 927 /* 10BASE is not supported */
928 phydev->supported &= ~PHY_10BT_FEATURES; 928 phydev->supported &= ~PHY_10BT_FEATURES;
929 929
930 netdev_info(ndev, "attached PHY %d (IRQ %d) to driver %s\n", 930 phy_attached_info(phydev);
931 phydev->addr, phydev->irq, phydev_name(phydev));
932 931
933 priv->phydev = phydev; 932 priv->phydev = phydev;
934 933
diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c
index e14d28474b70..94581be64d65 100644
--- a/drivers/net/ethernet/renesas/sh_eth.c
+++ b/drivers/net/ethernet/renesas/sh_eth.c
@@ -1826,8 +1826,7 @@ static int sh_eth_phy_init(struct net_device *ndev)
1826 return PTR_ERR(phydev); 1826 return PTR_ERR(phydev);
1827 } 1827 }
1828 1828
1829 netdev_info(ndev, "attached PHY %d (IRQ %d) to driver %s\n", 1829 phy_attached_info(phydev);
1830 phydev->addr, phydev->irq, phydev_name(phydev));
1831 1830
1832 mdp->phydev = phydev; 1831 mdp->phydev = phydev;
1833 1832
diff --git a/drivers/net/ethernet/smsc/smsc911x.c b/drivers/net/ethernet/smsc/smsc911x.c
index 067346d3209d..139b99b04099 100644
--- a/drivers/net/ethernet/smsc/smsc911x.c
+++ b/drivers/net/ethernet/smsc/smsc911x.c
@@ -1031,9 +1031,7 @@ static int smsc911x_mii_probe(struct net_device *dev)
1031 return ret; 1031 return ret;
1032 } 1032 }
1033 1033
1034 netdev_info(dev, 1034 phy_attached_info(phydev);
1035 "attached PHY driver [%s] (mii_bus:phy_addr=%s, irq=%d)\n",
1036 phydev->drv->name, phydev_name(phydev), phydev->irq);
1037 1035
1038 /* mask with MAC supported features */ 1036 /* mask with MAC supported features */
1039 phydev->supported &= (PHY_BASIC_FEATURES | SUPPORTED_Pause | 1037 phydev->supported &= (PHY_BASIC_FEATURES | SUPPORTED_Pause |
diff --git a/drivers/net/ethernet/smsc/smsc9420.c b/drivers/net/ethernet/smsc/smsc9420.c
index a02ed6b63064..fa8893a804f7 100644
--- a/drivers/net/ethernet/smsc/smsc9420.c
+++ b/drivers/net/ethernet/smsc/smsc9420.c
@@ -1163,10 +1163,6 @@ static int smsc9420_mii_probe(struct net_device *dev)
1163 return -ENODEV; 1163 return -ENODEV;
1164 } 1164 }
1165 1165
1166 phydev = pd->mii_bus->phy_map[1];
1167 netif_info(pd, probe, pd->dev, "PHY addr %d, phy_id 0x%08X\n",
1168 phydev->addr, phydev->phy_id);
1169
1170 phydev = phy_connect(dev, phydev_name(phydev), 1166 phydev = phy_connect(dev, phydev_name(phydev),
1171 smsc9420_phy_adjust_link, PHY_INTERFACE_MODE_MII); 1167 smsc9420_phy_adjust_link, PHY_INTERFACE_MODE_MII);
1172 1168
@@ -1175,14 +1171,13 @@ static int smsc9420_mii_probe(struct net_device *dev)
1175 return PTR_ERR(phydev); 1171 return PTR_ERR(phydev);
1176 } 1172 }
1177 1173
1178 netdev_info(dev, "attached PHY driver [%s] (mii_bus:phy_addr=%s, irq=%d)\n",
1179 phydev->drv->name, phydev_name(phydev), phydev->irq);
1180
1181 /* mask with MAC supported features */ 1174 /* mask with MAC supported features */
1182 phydev->supported &= (PHY_BASIC_FEATURES | SUPPORTED_Pause | 1175 phydev->supported &= (PHY_BASIC_FEATURES | SUPPORTED_Pause |
1183 SUPPORTED_Asym_Pause); 1176 SUPPORTED_Asym_Pause);
1184 phydev->advertising = phydev->supported; 1177 phydev->advertising = phydev->supported;
1185 1178
1179 phy_attached_info(phydev);
1180
1186 pd->phy_dev = phydev; 1181 pd->phy_dev = phydev;
1187 pd->last_duplex = -1; 1182 pd->last_duplex = -1;
1188 pd->last_carrier = -1; 1183 pd->last_carrier = -1;
diff --git a/drivers/net/ethernet/synopsys/dwc_eth_qos.c b/drivers/net/ethernet/synopsys/dwc_eth_qos.c
index 9066d7a8483c..b25ee370254a 100644
--- a/drivers/net/ethernet/synopsys/dwc_eth_qos.c
+++ b/drivers/net/ethernet/synopsys/dwc_eth_qos.c
@@ -972,9 +972,7 @@ static int dwceqos_mii_probe(struct net_device *ndev)
972 } 972 }
973 973
974 if (netif_msg_probe(lp)) 974 if (netif_msg_probe(lp))
975 netdev_dbg(lp->ndev, 975 phy_attached_info(phydev);
976 "phydev %p, phydev->phy_id 0xa%x, phydev->addr 0x%x\n",
977 phydev, phydev->phy_id, phydev->addr);
978 976
979 phydev->supported &= PHY_GBIT_FEATURES; 977 phydev->supported &= PHY_GBIT_FEATURES;
980 978
@@ -983,14 +981,6 @@ static int dwceqos_mii_probe(struct net_device *ndev)
983 lp->duplex = DUPLEX_UNKNOWN; 981 lp->duplex = DUPLEX_UNKNOWN;
984 lp->phy_dev = phydev; 982 lp->phy_dev = phydev;
985 983
986 if (netif_msg_probe(lp)) {
987 netdev_dbg(lp->ndev, "phy_addr 0x%x, phy_id 0x%08x\n",
988 lp->phy_dev->addr, lp->phy_dev->phy_id);
989
990 netdev_dbg(lp->ndev, "attach [%s] phy driver\n",
991 lp->phy_dev->drv->name);
992 }
993
994 return 0; 984 return 0;
995} 985}
996 986
diff --git a/drivers/net/ethernet/ti/cpsw.c b/drivers/net/ethernet/ti/cpsw.c
index 34ce7dce8c9d..49544c0fa6a7 100644
--- a/drivers/net/ethernet/ti/cpsw.c
+++ b/drivers/net/ethernet/ti/cpsw.c
@@ -1159,8 +1159,8 @@ static void cpsw_slave_open(struct cpsw_slave *slave, struct cpsw_priv *priv)
1159 slave->data->phy_id, slave->slave_num); 1159 slave->data->phy_id, slave->slave_num);
1160 slave->phy = NULL; 1160 slave->phy = NULL;
1161 } else { 1161 } else {
1162 dev_info(priv->dev, "phy found : id is : 0x%x\n", 1162 phy_attached_info(slave->phy);
1163 slave->phy->phy_id); 1163
1164 phy_start(slave->phy); 1164 phy_start(slave->phy);
1165 1165
1166 /* Configure GMII_SEL register */ 1166 /* Configure GMII_SEL register */
diff --git a/drivers/net/ethernet/ti/davinci_emac.c b/drivers/net/ethernet/ti/davinci_emac.c
index 5a40b0256327..5d9abedd6b75 100644
--- a/drivers/net/ethernet/ti/davinci_emac.c
+++ b/drivers/net/ethernet/ti/davinci_emac.c
@@ -1644,10 +1644,7 @@ static int emac_dev_open(struct net_device *ndev)
1644 priv->speed = 0; 1644 priv->speed = 0;
1645 priv->duplex = ~0; 1645 priv->duplex = ~0;
1646 1646
1647 dev_info(emac_dev, "attached PHY driver [%s] " 1647 phy_attached_info(priv->phydev);
1648 "(mii_bus:phy_addr=%s, id=%x)\n",
1649 priv->phydev->drv->name, phydev_name(priv->phydev),
1650 priv->phydev->phy_id);
1651 } 1648 }
1652 1649
1653 if (!priv->phydev) { 1650 if (!priv->phydev) {
diff --git a/drivers/net/ethernet/toshiba/tc35815.c b/drivers/net/ethernet/toshiba/tc35815.c
index 8df6072ac78d..8fd5e0ba718c 100644
--- a/drivers/net/ethernet/toshiba/tc35815.c
+++ b/drivers/net/ethernet/toshiba/tc35815.c
@@ -638,10 +638,8 @@ static int tc_mii_probe(struct net_device *dev)
638 printk(KERN_ERR "%s: Could not attach to PHY\n", dev->name); 638 printk(KERN_ERR "%s: Could not attach to PHY\n", dev->name);
639 return PTR_ERR(phydev); 639 return PTR_ERR(phydev);
640 } 640 }
641 printk(KERN_INFO "%s: attached PHY driver [%s] " 641
642 "(mii_bus:phy_addr=%s, id=%x)\n", 642 phy_attached_info(phydev);
643 dev->name, phydev->drv->name, phydev_name(phydev),
644 phydev->phy_id);
645 643
646 /* mask with MAC supported features */ 644 /* mask with MAC supported features */
647 phydev->supported &= PHY_BASIC_FEATURES; 645 phydev->supported &= PHY_BASIC_FEATURES;
diff --git a/drivers/net/phy/phy_device.c b/drivers/net/phy/phy_device.c
index 0f179709a289..68fe5738daef 100644
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
@@ -607,6 +607,33 @@ int phy_init_hw(struct phy_device *phydev)
607} 607}
608EXPORT_SYMBOL(phy_init_hw); 608EXPORT_SYMBOL(phy_init_hw);
609 609
610void phy_attached_info(struct phy_device *phydev)
611{
612 phy_attached_print(phydev, NULL);
613}
614EXPORT_SYMBOL(phy_attached_info);
615
616#define ATTACHED_FMT "attached PHY driver [%s] (mii_bus:phy_addr=%s, irq=%d)"
617void phy_attached_print(struct phy_device *phydev, const char *fmt, ...)
618{
619 if (!fmt) {
620 dev_info(&phydev->dev, ATTACHED_FMT "\n",
621 phydev->drv->name, phydev_name(phydev),
622 phydev->irq);
623 } else {
624 va_list ap;
625
626 dev_info(&phydev->dev, ATTACHED_FMT,
627 phydev->drv->name, phydev_name(phydev),
628 phydev->irq);
629
630 va_start(ap, fmt);
631 vprintk(fmt, ap);
632 va_end(ap);
633 }
634}
635EXPORT_SYMBOL(phy_attached_print);
636
610/** 637/**
611 * phy_attach_direct - attach a network device to a given PHY device pointer 638 * phy_attach_direct - attach a network device to a given PHY device pointer
612 * @dev: network device to attach 639 * @dev: network device to attach
diff --git a/drivers/staging/netlogic/xlr_net.c b/drivers/staging/netlogic/xlr_net.c
index b939c4b5f229..cbc25b7e70a2 100644
--- a/drivers/staging/netlogic/xlr_net.c
+++ b/drivers/staging/netlogic/xlr_net.c
@@ -854,8 +854,7 @@ static int xlr_mii_probe(struct xlr_net_priv *priv)
854 | ADVERTISED_MII); 854 | ADVERTISED_MII);
855 855
856 phydev->advertising = phydev->supported; 856 phydev->advertising = phydev->supported;
857 pr_info("attached PHY driver [%s] (mii_bus:phy_addr=%s\n", 857 phy_attached_info(phydev);
858 phydev->drv->name, phydev_name(phydev));
859 return 0; 858 return 0;
860} 859}
861 860