On Wed, Jul 07, 2021 at 12:36:30AM +0000, Ismail, Mohammad Athari wrote:
-----Original Message-----
From: Andrew Lunn <andrew@xxxxxxx>
Sent: Tuesday, July 6, 2021 9:14 PM
To: Ling, Pei Lee <pei.lee.ling@xxxxxxxxx>
Cc: Heiner Kallweit <hkallweit1@xxxxxxxxx>; Russell King
<linux@xxxxxxxxxxxxxxx>; davem@xxxxxxxxxxxxx; Jakub Kicinski
<kuba@xxxxxxxxxx>; Ioana Ciornei <ioana.ciornei@xxxxxxx>;
netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Voon, Weifeng
<weifeng.voon@xxxxxxxxx>; vee.khee.wong@xxxxxxxxxxxxxxx; Wong, Vee Khee
<vee.khee.wong@xxxxxxxxx>; Ismail, Mohammad Athari
<mohammad.athari.ismail@xxxxxxxxx>
Subject: Re: [PATCH net] net: phy: skip disabling interrupt when WOL is enabled
in shutdown
On Tue, Jul 06, 2021 at 05:02:09PM +0800, Ling Pei Lee wrote:
From: Mohammad Athari Bin Ismail <mohammad.athari.ismail@xxxxxxxxx>
PHY WOL requires WOL interrupt event to trigger the WOL signal in
order to wake up the system. Hence, the PHY driver should not disable
the interrupt during shutdown if PHY WOL is enabled.
If the device is being used to wake the system up, why is it being shutdown?
Hi Andrew,
When the platform goes to S5 state (ex: shutdown -h now), regardless
PHY WOL is enabled or not, phy_shutdown() is called. So, for the
platform that support WOL from S5, we need to make sure the PHY
still can trigger WOL event. Disabling the interrupt through
phy_disable_interrupts() in phy_shutdown() will disable WOL
interrupt as well and cause the PHY WOL not able to trigger.
This sounds like a firmware problem. If linux is shutdown, linux is
not controlling the hardware, the firmware is. So the firmware should
probably be configuring the PHY after Linux powers off.
If Linux is suspended, then Linux is still controlling the hardware,
and it will not shutdown the PHY.