generic: ar8216: add port mirroring
[librecmc/librecmc.git] / target / linux / generic / files / drivers / net / phy / ar8216.h
index 95d9a96e75737f6415fa15d8d603ca6b339d3bb5..086d58fbab45c729feed3d95e826bc8457ee32b6 100644 (file)
 #define   AR8216_MIB_FUNC_CAPTURE      0x3
 #define   AR8236_MIB_EN                        BIT(30)
 
+#define AR8216_REG_GLOBAL_CPUPORT              0x0078
+#define   AR8216_GLOBAL_CPUPORT_MIRROR_PORT    BITS(4, 4)
+#define   AR8216_GLOBAL_CPUPORT_MIRROR_PORT_S  4
+
 #define AR8216_PORT_OFFSET(_i)         (0x0100 * (_i + 1))
 #define AR8216_REG_PORT_STATUS(_i)     (AR8216_PORT_OFFSET(_i) + 0x0000)
 #define   AR8216_PORT_STATUS_SPEED     BITS(0,2)
 #define   AR8327_PORT_LOOKUP_STATE             BITS(16, 3)
 #define   AR8327_PORT_LOOKUP_STATE_S           16
 #define   AR8327_PORT_LOOKUP_LEARN             BIT(20)
+#define   AR8327_PORT_LOOKUP_ING_MIRROR_EN     BIT(25)
 
 #define AR8327_REG_PORT_PRIO(_i)               (0x664 + (_i) * 0xc)
 
+#define AR8327_REG_PORT_HOL_CTRL1(_i)          (0x974 + (_i) * 0x8)
+#define   AR8327_PORT_HOL_CTRL1_EG_MIRROR_EN   BIT(16)
+
 #define AR8327_REG_PORT_STATS_BASE(_i)         (0x1000 + (_i) * 0x100)
 
 /* port speed */