• Rakesh Sankaranarayanan's avatar
    net: dsa: microchip: lan937x: fix maximum frame length check · 807e5eda
    Rakesh Sankaranarayanan authored
    Maximum frame length check is enabled in lan937x switch on POR, But it
    is found to be disabled on driver during port setup operation. Due to
    this, packets are not dropped when transmitted with greater than configured
    value. For testing, setup made for lan1->lan2 transmission and configured
    lan1 interface with a frame length (less than 1500 as mentioned in
    documentation) and transmitted packets with greater than configured value.
    Expected no packets at lan2 end, but packets observed at lan2.
    
    Based on the documentation, packets should get discarded if the actual
    packet length doesn't match the frame length configured. Frame length check
    should be disabled only for cascaded ports due to tailtags.
    
    This feature was disabled on ksz9477 series due to ptp issue, which is
    not in lan937x series. But since lan937x took ksz9477 as base, frame
    length check disabled here as well. Patch added to remove this portion
    from port setup so that maximum frame length check will be active for
    normal ports.
    
    Fixes: 55ab6ffa ("net: dsa: microchip: add DSA support for microchip LAN937x")
    Signed-off-by: default avatarRakesh Sankaranarayanan <rakesh.sankaranarayanan@microchip.com>
    Link: https://lore.kernel.org/r/20220912051228.1306074-1-rakesh.sankaranarayanan@microchip.comSigned-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
    807e5eda
lan937x_main.c 10.3 KB