net: smsc911x: Fix bug where PHY interrupts are overwritten by 0
authorJeremy Linton <jeremy.linton@arm.com>
Wed, 22 Jun 2016 17:40:50 +0000 (12:40 -0500)
committerDavid S. Miller <davem@davemloft.net>
Mon, 27 Jun 2016 08:21:15 +0000 (04:21 -0400)
commita37503bc387ce2434106d4bf4870bd73081c7355
tree0c2ccedabab4d556c5dbdfb2356a0b60a57cdbc8
parentc40e4096bf0a12a76c349cbc4d1b2aa40a3d68cd
net: smsc911x: Fix bug where PHY interrupts are overwritten by 0

By default, mdiobus_alloc() sets the PHYs to polling mode, but a
pointer size memcpy means that a couple IRQs end up being overwritten
with a value of 0. This means that PHY_POLL is disabled and results
in unpredictable behavior depending on the PHY's location on the
MDIO bus. Remove that memcpy and the now unused phy_irq member to
force the SMSC911x PHYs into polling mode 100% of the time.

Fixes: e7f4dc3536a4 ("mdio: Move allocation of interrupts into core")
Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Acked-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/smsc/smsc911x.c