• Kunihiko Hayashi's avatar
    net: ethernet: ave: Set initial wol state to disabled · 7200f2e3
    Kunihiko Hayashi authored
    If wol state of phy hardware is enabled after reset, phy_ethtool_get_wol()
    returns that wol.wolopts is true.
    
    However, since net_device.wol_enabled is zero and this doesn't apply wol
    state until calling ethtool_set_wol(), so mdio_bus_phy_may_suspend()
    returns true, that is, it's in a state where phy can suspend even though
    wol state is enabled.
    
    In this inconsistency, phy_suspend() returns -EBUSY, and at last,
    suspend sequence fails with the following message:
    
        dpm_run_callback(): mdio_bus_phy_suspend+0x0/0x58 returns -16
        PM: Device 65000000.ethernet-ffffffff:01 failed to suspend: error -16
        PM: Some devices failed to suspend, or early wake event detected
    
    In order to fix the above issue, this patch forces to set initial wol state
    to disabled as default.
    Signed-off-by: default avatarKunihiko Hayashi <hayashi.kunihiko@socionext.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    7200f2e3
sni_ave.c 47.9 KB