summary refs log tree commit diff
path: root/drivers
diff options
context:
space:
mode:
authorBryan Whitehead <Bryan.Whitehead@microchip.com>2018-12-17 16:44:50 -0500
committerDavid S. Miller <davem@davemloft.net>2018-12-18 21:35:56 -0800
commit0db7d253e9f0ff1a41c602429bea93df221be6ed (patch)
treeb08ef5259dcc48fd364d0131a37c7549e313c562 /drivers
parent59fc137ebdd1a93bfec991a1c8dd96002433b2e9 (diff)
downloadlinux-0db7d253e9f0ff1a41c602429bea93df221be6ed.tar.gz
lan743x: Expand phy search for LAN7431
The LAN7431 uses an external phy, and it can be found anywhere in
the phy address space. This patch uses phy address 1 for LAN7430
only. And searches all addresses otherwise.

Signed-off-by: Bryan Whitehead <Bryan.Whitehead@microchip.com>
Reviewed-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/microchip/lan743x_main.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/ethernet/microchip/lan743x_main.c b/drivers/net/ethernet/microchip/lan743x_main.c
index e8ca98c070f6..1ba8ea07dc4f 100644
--- a/drivers/net/ethernet/microchip/lan743x_main.c
+++ b/drivers/net/ethernet/microchip/lan743x_main.c
@@ -2719,8 +2719,9 @@ static int lan743x_mdiobus_init(struct lan743x_adapter *adapter)
 	snprintf(adapter->mdiobus->id, MII_BUS_ID_SIZE,
 		 "pci-%s", pci_name(adapter->pdev));
 
-	/* set to internal PHY id */
-	adapter->mdiobus->phy_mask = ~(u32)BIT(1);
+	if ((adapter->csr.id_rev & ID_REV_ID_MASK_) == ID_REV_ID_LAN7430_)
+		/* LAN7430 uses internal phy at address 1 */
+		adapter->mdiobus->phy_mask = ~(u32)BIT(1);
 
 	/* register mdiobus */
 	ret = mdiobus_register(adapter->mdiobus);