Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

net: dsa: tag_qca: use the dsa_xmit_port_mask() helper

The "qca" 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.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Link: https://patch.msgid.link/20251127120902.292555-10-vladimir.oltean@nxp.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

authored by

Vladimir Oltean and committed by
Jakub Kicinski
48afabaf 5733fe2a

+1 -2
+1 -2
net/dsa/tag_qca.c
··· 14 14 15 15 static struct sk_buff *qca_tag_xmit(struct sk_buff *skb, struct net_device *dev) 16 16 { 17 - struct dsa_port *dp = dsa_user_to_port(dev); 18 17 __be16 *phdr; 19 18 u16 hdr; 20 19 ··· 25 26 /* Set the version field, and set destination port information */ 26 27 hdr = FIELD_PREP(QCA_HDR_XMIT_VERSION, QCA_HDR_VERSION); 27 28 hdr |= QCA_HDR_XMIT_FROM_CPU; 28 - hdr |= FIELD_PREP(QCA_HDR_XMIT_DP_BIT, BIT(dp->index)); 29 + hdr |= FIELD_PREP(QCA_HDR_XMIT_DP_BIT, dsa_xmit_port_mask(skb, dev)); 29 30 30 31 *phdr = htons(hdr); 31 32