net: usb: lan78xx: lan78xx_phy_init(): use PHY_POLL instead of "0" if no IRQ is available
commit 817b653160db9852d5a0498a31f047e18ce27e5b upstream.
On most systems request for IRQ 0 will fail, phylib will print an error message
and fall back to polling. To fix this set the phydev->irq to PHY_POLL if no IRQ
is available.
Fixes: cc89c323a3
("lan78xx: Use irq_domain for phy interrupt from USB Int. EP")
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Sven Schuchmann <schuchmann@schleissheimer.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
acef1c2b15
commit
3260b8d120
@@ -2128,7 +2128,7 @@ static int lan78xx_phy_init(struct lan78xx_net *dev)
|
|||||||
if (dev->domain_data.phyirq > 0)
|
if (dev->domain_data.phyirq > 0)
|
||||||
phydev->irq = dev->domain_data.phyirq;
|
phydev->irq = dev->domain_data.phyirq;
|
||||||
else
|
else
|
||||||
phydev->irq = 0;
|
phydev->irq = PHY_POLL;
|
||||||
netdev_dbg(dev->net, "phydev->irq = %d\n", phydev->irq);
|
netdev_dbg(dev->net, "phydev->irq = %d\n", phydev->irq);
|
||||||
|
|
||||||
/* set to AUTOMDIX */
|
/* set to AUTOMDIX */
|
||||||
|
Reference in New Issue
Block a user