@@ -709,7 +709,7 @@ void phy_stop(struct phy_device *phydev)
if (PHY_HALTED == phydev->state)
goto out_unlock;
- if (phydev->irq != PHY_POLL) {
+ if (phydev->irq > 0) {
/* Disable PHY Interrupts */
phy_config_interrupt(phydev, PHY_INTERRUPT_DISABLED);
@@ -896,7 +896,7 @@ void phy_state_machine(struct work_struct *work)
phydev->adjust_link(phydev->attached_dev);
- if (PHY_POLL != phydev->irq)
+ if (phydev->irq > 0)
err = phy_config_interrupt(phydev,
PHY_INTERRUPT_ENABLED);
break;
@@ -1011,7 +1011,7 @@ static int phy_probe(struct device *dev)
phydev->drv = phydrv;
/* Disable the interrupt if the PHY doesn't support it */
- if (!(phydrv->flags & PHY_HAS_INTERRUPT))
+ if (!(phydrv->flags & PHY_HAS_INTERRUPT) && phydev->irq > 0)
phydev->irq = PHY_POLL;
mutex_lock(&phydev->lock);