]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/net/dsa/mv88e6xxx.h
net: dsa: mv88e6xxx: extend fid mask
[karo-tx-linux.git] / drivers / net / dsa / mv88e6xxx.h
index 8b017d65b6917f4cc31707138914547dd29e7a06..200327b7ea7d15e4bcb5d22121aab20342026a40 100644 (file)
@@ -11,6 +11,8 @@
 #ifndef __MV88E6XXX_H
 #define __MV88E6XXX_H
 
+#include <linux/if_vlan.h>
+
 #ifndef UINT64_MAX
 #define UINT64_MAX             (u64)(~((u64)0))
 #endif
 #define GLOBAL_MAC_01          0x01
 #define GLOBAL_MAC_23          0x02
 #define GLOBAL_MAC_45          0x03
+#define GLOBAL_ATU_FID         0x01    /* 6097 6165 6351 6352 */
 #define GLOBAL_CONTROL         0x04
 #define GLOBAL_CONTROL_SW_RESET                BIT(15)
 #define GLOBAL_CONTROL_PPU_ENABLE      BIT(14)
@@ -351,9 +354,9 @@ struct mv88e6xxx_priv_state {
 
        /* hw bridging */
 
-       u32 fid_mask;
-       u8 fid[DSA_MAX_PORTS];
-       u16 bridge_mask[DSA_MAX_PORTS];
+       DECLARE_BITMAP(fid_bitmap, VLAN_N_VID); /* FIDs 1 to 4095 available */
+       u16 fid[DSA_MAX_PORTS];                 /* per (non-bridged) port FID */
+       u16 bridge_mask[DSA_MAX_PORTS];         /* br groups (indexed by FID) */
 
        unsigned long port_state_update_mask;
        u8 port_state[DSA_MAX_PORTS];