On 03/23/2017 02:41 PM, Florian Fainelli wrote:
> On 03/22/2017 01:27 PM, Zach Brown wrote:
>> From: Nathan Sullivan <nathan.sulli...@ni.com>
>>
>> If the PHY is halted on stop, then do not set the state to PHY_UP.  This
>> ensures the phy will be restarted later in phy_start when the machine is
>> started again.
> 
> So essentially what you want to "defeat" here is entering phy_start()
> with PHY_UP therefore not run this part:
> 
>         case PHY_HALTED:
>                 /* make sure interrupts are re-enabled for the PHY */
>                 if (phydev->irq != PHY_POLL) {
>                         err = phy_enable_interrupts(phydev);
>                         if (err < 0)
>                                 break;
>                 }
> 
>                 phydev->state = PHY_RESUMING;
>                 do_resume = true;
>                 break;
> 
> which is what re-enables interrupts and makes sure the PHY is resumed,
> right?
> 
> If that's the scenario, I guess:
> 
> Reviewed-by: Florian Fainelli <f.faine...@gmail.com>

And almost forgot:

Fixes: 00db8189d984 ("This patch adds a PHY Abstraction Layer to the
Linux Kernel, enabling ethernet drivers to remain as ignorant as is
reasonable of the connected PHY's design and operation details.")
-- 
Florian

Reply via email to