]> Gentwo Git Trees - linux/.git/commitdiff
net: dsa: tag_rtl8_4: use the dsa_xmit_port_mask() helper
authorVladimir Oltean <vladimir.oltean@nxp.com>
Thu, 27 Nov 2025 12:08:58 +0000 (14:08 +0200)
committerJakub Kicinski <kuba@kernel.org>
Sat, 29 Nov 2025 04:03:40 +0000 (20:03 -0800)
The "rtl8_4" and "rtl8_4t" tagging protocols populate 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: Linus Walleij <linus.walleij@linaro.org>
Cc: "Alvin Šipraga" <alsi@bang-olufsen.dk>
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Link: https://patch.msgid.link/20251127120902.292555-12-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/dsa/tag_rtl8_4.c

index 15c2bae2b429e9e8fc158bb5e580765325f23091..2464545da4d22dacfc2d9a6e93600c2550fdc1db 100644 (file)
 static void rtl8_4_write_tag(struct sk_buff *skb, struct net_device *dev,
                             void *tag)
 {
-       struct dsa_port *dp = dsa_user_to_port(dev);
        __be16 tag16[RTL8_4_TAG_LEN / 2];
 
        /* Set Realtek EtherType */
@@ -116,7 +115,7 @@ static void rtl8_4_write_tag(struct sk_buff *skb, struct net_device *dev,
        tag16[2] = htons(FIELD_PREP(RTL8_4_LEARN_DIS, 1));
 
        /* Zero ALLOW; set RX (CPU->switch) forwarding port mask */
-       tag16[3] = htons(FIELD_PREP(RTL8_4_RX, BIT(dp->index)));
+       tag16[3] = htons(FIELD_PREP(RTL8_4_RX, dsa_xmit_port_mask(skb, dev)));
 
        memcpy(tag, tag16, RTL8_4_TAG_LEN);
 }