]> Gentwo Git Trees - linux/.git/commitdiff
net: dsa: tag_xrs700x: use the dsa_xmit_port_mask() helper
authorVladimir Oltean <vladimir.oltean@nxp.com>
Thu, 27 Nov 2025 12:09:01 +0000 (14:09 +0200)
committerJakub Kicinski <kuba@kernel.org>
Sat, 29 Nov 2025 04:03:41 +0000 (20:03 -0800)
The "xrs700x" is the original DSA tagging protocol with HSR TX
replication support, we now essentially move that logic to the
dsa_xmit_port_mask() helper. The end result is something akin to
hellcreek_xmit() (but reminds me I should also take care of
skb_checksum_help() for tail taggers in the core).

The implementation differences to dsa_xmit_port_mask() are immaterial.

Cc: George McCollister <george.mccollister@gmail.com>
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Link: https://patch.msgid.link/20251127120902.292555-15-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/dsa/tag_xrs700x.c

index 68d4633ddd5eadda93b757ffb685c8e0412fe802..a05219f702c65a21739a7ef03c967615848163a6 100644 (file)
 
 static struct sk_buff *xrs700x_xmit(struct sk_buff *skb, struct net_device *dev)
 {
-       struct dsa_port *partner, *dp = dsa_user_to_port(dev);
        u8 *trailer;
 
        trailer = skb_put(skb, 1);
-       trailer[0] = BIT(dp->index);
-
-       if (dp->hsr_dev)
-               dsa_hsr_foreach_port(partner, dp->ds, dp->hsr_dev)
-                       if (partner != dp)
-                               trailer[0] |= BIT(partner->index);
+       trailer[0] = dsa_xmit_port_mask(skb, dev);
 
        return skb;
 }