• Biao Huang's avatar
    net: stmmac: fix unbalanced ptp clock issue in suspend/resume flow · f4c7d894
    Biao Huang authored
    Current stmmac driver will prepare/enable ptp_ref clock in
    stmmac_init_tstamp_counter().
    
    The stmmac_pltfr_noirq_suspend will disable it once in suspend flow.
    
    But in resume flow,
    	stmmac_pltfr_noirq_resume --> stmmac_init_tstamp_counter
    	stmmac_resume --> stmmac_hw_setup --> stmmac_init_ptp --> stmmac_init_tstamp_counter
    ptp_ref clock reference counter increases twice, which leads to unbalance
    ptp clock when resume back.
    
    Move ptp_ref clock prepare/enable out of stmmac_init_tstamp_counter to fix it.
    
    Fixes: 0735e639 ("net: stmmac: skip only stmmac_ptp_register when resume from suspend")
    Signed-off-by: default avatarBiao Huang <biao.huang@mediatek.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    f4c7d894
stmmac_platform.c 24.5 KB