From: Vladimir Oltean Date: Wed, 11 May 2022 09:50:16 +0000 (+0300) Subject: net: dsa: introduce the dsa_cpu_ports() helper X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=465c3de42b5dcdf0fa8cf996a81de6ba0e8553a3;p=linux.git net: dsa: introduce the dsa_cpu_ports() helper Similar to dsa_user_ports() which retrieves a port mask of all user ports, introduce dsa_cpu_ports() which retrieves the mask of all CPU ports of a switch. Signed-off-by: Vladimir Oltean Signed-off-by: Jakub Kicinski --- diff --git a/include/net/dsa.h b/include/net/dsa.h index efd33956df371..76257a9f0e1bd 100644 --- a/include/net/dsa.h +++ b/include/net/dsa.h @@ -590,6 +590,17 @@ static inline u32 dsa_user_ports(struct dsa_switch *ds) return mask; } +static inline u32 dsa_cpu_ports(struct dsa_switch *ds) +{ + struct dsa_port *cpu_dp; + u32 mask = 0; + + dsa_switch_for_each_cpu_port(cpu_dp, ds) + mask |= BIT(cpu_dp->index); + + return mask; +} + /* Return the local port used to reach an arbitrary switch device */ static inline unsigned int dsa_routing_port(struct dsa_switch *ds, int device) {