aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/phy/mdio-bitbang.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/phy/mdio-bitbang.c')
-rw-r--r--drivers/net/phy/mdio-bitbang.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/net/phy/mdio-bitbang.c b/drivers/net/phy/mdio-bitbang.c
index daec9b05d168..61a543c788cc 100644
--- a/drivers/net/phy/mdio-bitbang.c
+++ b/drivers/net/phy/mdio-bitbang.c
@@ -165,8 +165,11 @@ static int mdiobb_read(struct mii_bus *bus, int phy, int reg)
165 165
166 ctrl->ops->set_mdio_dir(ctrl, 0); 166 ctrl->ops->set_mdio_dir(ctrl, 0);
167 167
168 /* check the turnaround bit: the PHY should be driving it to zero */ 168 /* check the turnaround bit: the PHY should be driving it to zero, if this
169 if (mdiobb_get_bit(ctrl) != 0) { 169 * PHY is listed in phy_ignore_ta_mask as having broken TA, skip that
170 */
171 if (mdiobb_get_bit(ctrl) != 0 &&
172 !(bus->phy_ignore_ta_mask & (1 << phy))) {
170 /* PHY didn't drive TA low -- flush any bits it 173 /* PHY didn't drive TA low -- flush any bits it
171 * may be trying to send. 174 * may be trying to send.
172 */ 175 */