• Joakim Zhang's avatar
    net: fec: fix system hang during suspend/resume · 0b6f65c7
    Joakim Zhang authored
    1. During normal suspend (WoL not enabled) process, system has posibility
    to hang. The root cause is TXF interrupt coming after clocks disabled,
    system hang when accessing registers from interrupt handler. To fix this
    issue, disable all interrupts when system suspend.
    
    2. System also has posibility to hang with WoL enabled during suspend,
    after entering stop mode, then magic pattern coming after clocks
    disabled, system will be waked up, and interrupt handler will be called,
    system hang when access registers. To fix this issue, disable wakeup
    irq in .suspend(), and enable it in .resume().
    Signed-off-by: default avatarJoakim Zhang <qiangqing.zhang@nxp.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    0b6f65c7
fec_main.c 108 KB