• Vladimir Oltean's avatar
    net: dsa: sja1105: always enable the send_meta options · a372d66a
    Vladimir Oltean authored
    incl_srcpt has the limitation, mentioned in commit b4638af8 ("net:
    dsa: sja1105: always enable the INCL_SRCPT option"), that frames with a
    MAC DA of 01:80:c2:xx:yy:zz will be received as 01:80:c2:00:00:zz unless
    PTP RX timestamping is enabled.
    
    The incl_srcpt option was initially unconditionally enabled, then that
    changed with commit 42824463 ("net: dsa: sja1105: Limit use of
    incl_srcpt to bridge+vlan mode"), then again with b4638af8 ("net:
    dsa: sja1105: always enable the INCL_SRCPT option"). Bottom line is that
    it now needs to be always enabled, otherwise the driver does not have a
    reliable source of information regarding source_port and switch_id for
    link-local traffic (tag_8021q VLANs may be imprecise since now they
    identify an entire bridging domain when ports are not standalone).
    
    If we accept that PTP RX timestamping (and therefore, meta frame
    generation) is always enabled in hardware, then that limitation could be
    avoided and packets with any MAC DA can be properly received, because
    meta frames do contain the original bytes from the MAC DA of their
    associated link-local packet.
    
    This change enables meta frame generation unconditionally, which also
    has the nice side effects of simplifying the switch control path
    (a switch reset is no longer required on hwtstamping settings change)
    and the tagger data path (it no longer needs to be informed whether to
    expect meta frames or not - it always does).
    
    Fixes: 227d07a0 ("net: dsa: sja1105: Add support for traffic through standalone ports")
    Signed-off-by: default avatarVladimir Oltean <vladimir.oltean@nxp.com>
    Reviewed-by: default avatarSimon Horman <simon.horman@corigine.com>
    Reviewed-by: default avatarFlorian Fainelli <florian.fainelli@broadcom.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    a372d66a
sja1105_main.c 95.5 KB