On 18.09.2018 22:02, Florian Fainelli wrote:
> On 09/18/2018 12:12 PM, Heiner Kallweit wrote:
>> I think I've seen a similar or same patch before, not sure why it
>> didn't make it yet. When being in state PHY_HALTED we don't have to
>> reschedule the state machine, phy_start() will start it again.
> 
> Yes, this is conceptually the same patch as as this one:
> 
> https://patchwork.ozlabs.org/patch/830415/
> 
Thanks for the link, this is what I was referring to.

> I prefer your version, though the comment in the original patch explains
> why.
> 
To be sure I understand you correctly:
You're fine with the patch as is or would you prefer to add a comment
like in the original patch ?

>>
>> Signed-off-by: Heiner Kallweit <hkallwe...@gmail.com>
>> ---
>>  drivers/net/phy/phy.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/phy/phy.c b/drivers/net/phy/phy.c
>> index 1ee25877c..c78203b25 100644
>> --- a/drivers/net/phy/phy.c
>> +++ b/drivers/net/phy/phy.c
>> @@ -1123,7 +1123,7 @@ void phy_state_machine(struct work_struct *work)
>>       * PHY, if PHY_IGNORE_INTERRUPT is set, then we will be moving
>>       * between states from phy_mac_interrupt()
>>       */
>> -    if (phy_polling_mode(phydev))
>> +    if (phy_polling_mode(phydev) && old_state != PHY_HALTED)
>>              queue_delayed_work(system_power_efficient_wq, 
>> &phydev->state_queue,
>>                                 PHY_STATE_TIME * HZ);
>>  }
>>
> 
> 

Reply via email to