diff options
-rw-r--r-- | drivers/net/phy/mdio_bus.c | 3 | ||||
-rw-r--r-- | include/linux/phy.h | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/phy/mdio_bus.c b/drivers/net/phy/mdio_bus.c index ad93b0da87f0..5eab9c42a111 100644 --- a/drivers/net/phy/mdio_bus.c +++ b/drivers/net/phy/mdio_bus.c | |||
@@ -61,6 +61,9 @@ int mdiobus_register(struct mii_bus *bus) | |||
61 | for (i = 0; i < PHY_MAX_ADDR; i++) { | 61 | for (i = 0; i < PHY_MAX_ADDR; i++) { |
62 | struct phy_device *phydev; | 62 | struct phy_device *phydev; |
63 | 63 | ||
64 | if (bus->phy_mask & (1 << i)) | ||
65 | continue; | ||
66 | |||
64 | phydev = get_phy_device(bus, i); | 67 | phydev = get_phy_device(bus, i); |
65 | 68 | ||
66 | if (IS_ERR(phydev)) | 69 | if (IS_ERR(phydev)) |
diff --git a/include/linux/phy.h b/include/linux/phy.h index 72cb67b66e0c..92a9696fdebe 100644 --- a/include/linux/phy.h +++ b/include/linux/phy.h | |||
@@ -72,6 +72,9 @@ struct mii_bus { | |||
72 | /* list of all PHYs on bus */ | 72 | /* list of all PHYs on bus */ |
73 | struct phy_device *phy_map[PHY_MAX_ADDR]; | 73 | struct phy_device *phy_map[PHY_MAX_ADDR]; |
74 | 74 | ||
75 | /* Phy addresses to be ignored when probing */ | ||
76 | u32 phy_mask; | ||
77 | |||
75 | /* Pointer to an array of interrupts, each PHY's | 78 | /* Pointer to an array of interrupts, each PHY's |
76 | * interrupt at the index matching its address */ | 79 | * interrupt at the index matching its address */ |
77 | int *irq; | 80 | int *irq; |