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

net: dsa: b53: Add mirror capture register definitions

Add definitions for the different Roboswitch registers relevant for
ingress and egress mirroring.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Florian Fainelli and committed by
David S. Miller
151da017 f50f2127

+32
+32
drivers/net/dsa/b53/b53_regs.h
··· 206 206 #define BRCM_HDR_P8_EN BIT(0) /* Enable tagging on port 8 */ 207 207 #define BRCM_HDR_P5_EN BIT(1) /* Enable tagging on port 5 */ 208 208 209 + /* Mirror capture control register (16 bit) */ 210 + #define B53_MIR_CAP_CTL 0x10 211 + #define CAP_PORT_MASK 0xf 212 + #define BLK_NOT_MIR BIT(14) 213 + #define MIRROR_EN BIT(15) 214 + 215 + /* Ingress mirror control register (16 bit) */ 216 + #define B53_IG_MIR_CTL 0x12 217 + #define MIRROR_MASK 0x1ff 218 + #define DIV_EN BIT(13) 219 + #define MIRROR_FILTER_MASK 0x3 220 + #define MIRROR_FILTER_SHIFT 14 221 + #define MIRROR_ALL 0 222 + #define MIRROR_DA 1 223 + #define MIRROR_SA 2 224 + 225 + /* Ingress mirror divider register (16 bit) */ 226 + #define B53_IG_MIR_DIV 0x14 227 + #define IN_MIRROR_DIV_MASK 0x3ff 228 + 229 + /* Ingress mirror MAC address register (48 bit) */ 230 + #define B53_IG_MIR_MAC 0x16 231 + 232 + /* Egress mirror control register (16 bit) */ 233 + #define B53_EG_MIR_CTL 0x1C 234 + 235 + /* Egress mirror divider register (16 bit) */ 236 + #define B53_EG_MIR_DIV 0x1E 237 + 238 + /* Egress mirror MAC address register (48 bit) */ 239 + #define B53_EG_MIR_MAC 0x20 240 + 209 241 /* Device ID register (8 or 32 bit) */ 210 242 #define B53_DEVICE_ID 0x30 211 243