/* phy_stop_interrupts - disable interrupts from a PHY device @phydev: target phy_device struct  */
int phy_stop_interrupts(struct phy_device *phydev)
/* phy_stop_interrupts - disable interrupts from a PHY device @phydev: target phy_device struct  */
int phy_stop_interrupts(struct phy_device *phydev)
{
	int err;
	err = phy_disable_interrupts(phydev);
	if (err)
		phy_error(phydev);
	free_irq(phydev->irq, phydev);
	cancel_work_sync(&phydev->phy_queue);
	while (atomic_dec_return(&phydev->irq_disable) >= 0)
		enable_irq(phydev->irq);
	return err;
}