• Lennart Sorensen's avatar
    drivers: net: cpsw: Fix broken loop condition in switch mode · 6f979eb3
    Lennart Sorensen authored
    0d961b3b (drivers: net: cpsw: fix buggy
    loop condition) accidentally fixed a loop comparison in too many places
    while fixing a real bug.
    
    It was correct to fix the dual_emac mode section since there 'i' is used
    as an index into priv->slaves which is a 0 based array.
    
    However the other two changes (which are only used in switch mode)
    are wrong since there 'i' is actually the ALE port number, and port 0
    is the host port, while port 1 and up are the slave ports.
    
    Putting the loop condition back in the switch mode section fixes it.
    
    A comment has been added to point out the intent clearly to avoid future
    confusion.  Also a comment is fixed that said the opposite of what was
    actually happening.
    Signed-off-by: default avatarLen Sorensen <lsorense@csclub.uwaterloo.ca>
    Acked-by: default avatarHeiko Schocher <hs@denx.de>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    6f979eb3
cpsw.c 68.1 KB