]> Gentwo Git Trees - linux/.git/commitdiff
net: dsa: tag_rzn1_a5psw: use the dsa_xmit_port_mask() helper
authorVladimir Oltean <vladimir.oltean@nxp.com>
Thu, 27 Nov 2025 12:08:59 +0000 (14:08 +0200)
committerJakub Kicinski <kuba@kernel.org>
Sat, 29 Nov 2025 04:03:41 +0000 (20:03 -0800)
The "a5psw" tagging protocol populates a bit mask for the TX ports,
so we can use dsa_xmit_port_mask() to centralize the decision of how to
set that field.

Cc: "Clément Léger" <clement.leger@bootlin.com>
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Link: https://patch.msgid.link/20251127120902.292555-13-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/dsa/tag_rzn1_a5psw.c

index 69d51221b1e52d59a3dc69f7d1985a72c87612e1..10994b3470f67a915d4c1ecc6879cc7fff7b1653 100644 (file)
@@ -39,7 +39,6 @@ struct a5psw_tag {
 
 static struct sk_buff *a5psw_tag_xmit(struct sk_buff *skb, struct net_device *dev)
 {
-       struct dsa_port *dp = dsa_user_to_port(dev);
        struct a5psw_tag *ptag;
        u32 data2_val;
 
@@ -60,7 +59,7 @@ static struct sk_buff *a5psw_tag_xmit(struct sk_buff *skb, struct net_device *de
 
        ptag = dsa_etype_header_pos_tx(skb);
 
-       data2_val = FIELD_PREP(A5PSW_CTRL_DATA_PORT, BIT(dp->index));
+       data2_val = FIELD_PREP(A5PSW_CTRL_DATA_PORT, dsa_xmit_port_mask(skb, dev));
        ptag->ctrl_tag = htons(ETH_P_DSA_A5PSW);
        ptag->ctrl_data = htons(A5PSW_CTRL_DATA_FORCE_FORWARD);
        ptag->ctrl_data2_lo = htons(data2_val);