• Florian Fainelli's avatar
    net: systemport: fix UniMAC reset logic · 412bce83
    Florian Fainelli authored
    The UniMAC CMD_SW_RESET bit is not a self-clearing bit, so we need to
    assert it, wait a bit and clear it manually. As a result, umac_reset()
    is updated not to return any value. The previous version of the code
    simply wrote 0 to the CMD register, which would make the busy-waiting
    loop exit immediately, having zero effect.
    
    By writing 0 to the CMD register, we were clearing all bits in the CMD
    register, and not using the hardware reset default values which are
    set on purpose.
    Signed-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    412bce83
bcmsysport.c 42.9 KB