• Chintan Vankar's avatar
    net: ethernet: ti: am65-cpsw/ethtool: Enable RX HW timestamp only for PTP packets · c03a6fd3
    Chintan Vankar authored
    In the current mechanism of timestamping, am65-cpsw-nuss driver
    enables hardware timestamping for all received packets by setting
    the TSTAMP_EN bit in CPTS_CONTROL register, which directs the CPTS
    module to timestamp all received packets, followed by passing
    timestamp via DMA descriptors. This mechanism causes CPSW Port to
    Lock up.
    
    To prevent port lock up, don't enable rx packet timestamping by
    setting TSTAMP_EN bit in CPTS_CONTROL register. The workaround for
    timestamping received packets is to utilize the CPTS Event FIFO
    that records timestamps corresponding to certain events. The CPTS
    module is configured to generate timestamps for Multicast Ethernet,
    UDP/IPv4 and UDP/IPv6 PTP packets.
    
    Update supported hwtstamp_rx_filters values for CPSW's timestamping
    capability.
    
    Fixes: b1f66a5b ("net: ethernet: ti: am65-cpsw-nuss: enable packet timestamping support")
    Signed-off-by: default avatarChintan Vankar <c-vankar@ti.com>
    Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
    c03a6fd3
am65-cpts.c 35.9 KB