net: dsa: mv88e6xxx: prefix Global VTU macros
Prefix and document the Global VTU registers macros and give a clear 16-bit registers representation. Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Šī revīzija ir iekļauta:

revīziju iesūtīja
David S. Miller

vecāks
27c0e60097
revīzija
7ec60d6e2c
@@ -47,10 +47,14 @@
|
||||
/* Offset 0x01: ATU FID Register */
|
||||
#define MV88E6352_G1_ATU_FID 0x01
|
||||
|
||||
#define GLOBAL_VTU_FID 0x02
|
||||
#define GLOBAL_VTU_FID_MASK 0xfff
|
||||
#define GLOBAL_VTU_SID 0x03 /* 6097 6165 6351 6352 */
|
||||
#define GLOBAL_VTU_SID_MASK 0x3f
|
||||
/* Offset 0x02: VTU FID Register */
|
||||
#define MV88E6352_G1_VTU_FID 0x02
|
||||
#define MV88E6352_G1_VTU_FID_MASK 0x0fff
|
||||
|
||||
/* Offset 0x03: VTU SID Register */
|
||||
#define MV88E6352_G1_VTU_SID 0x03
|
||||
#define MV88E6352_G1_VTU_SID_MASK 0x3f
|
||||
|
||||
#define GLOBAL_CONTROL 0x04
|
||||
#define GLOBAL_CONTROL_SW_RESET BIT(15)
|
||||
#define GLOBAL_CONTROL_PPU_ENABLE BIT(14)
|
||||
@@ -66,29 +70,40 @@
|
||||
#define GLOBAL_CONTROL_ATU_DONE_EN BIT(2)
|
||||
#define GLOBAL_CONTROL_TCAM_EN BIT(1)
|
||||
#define GLOBAL_CONTROL_EEPROM_DONE_EN BIT(0)
|
||||
#define GLOBAL_VTU_OP 0x05
|
||||
#define GLOBAL_VTU_OP_BUSY BIT(15)
|
||||
#define GLOBAL_VTU_OP_FLUSH_ALL ((0x01 << 12) | GLOBAL_VTU_OP_BUSY)
|
||||
#define GLOBAL_VTU_OP_VTU_LOAD_PURGE ((0x03 << 12) | GLOBAL_VTU_OP_BUSY)
|
||||
#define GLOBAL_VTU_OP_VTU_GET_NEXT ((0x04 << 12) | GLOBAL_VTU_OP_BUSY)
|
||||
#define GLOBAL_VTU_OP_STU_LOAD_PURGE ((0x05 << 12) | GLOBAL_VTU_OP_BUSY)
|
||||
#define GLOBAL_VTU_OP_STU_GET_NEXT ((0x06 << 12) | GLOBAL_VTU_OP_BUSY)
|
||||
#define GLOBAL_VTU_VID 0x06
|
||||
#define GLOBAL_VTU_VID_MASK 0xfff
|
||||
#define GLOBAL_VTU_VID_PAGE BIT(13)
|
||||
#define GLOBAL_VTU_VID_VALID BIT(12)
|
||||
#define GLOBAL_VTU_DATA_0_3 0x07
|
||||
#define GLOBAL_VTU_DATA_4_7 0x08
|
||||
#define GLOBAL_VTU_DATA_8_11 0x09
|
||||
#define GLOBAL_VTU_STU_DATA_MASK 0x03
|
||||
#define GLOBAL_VTU_DATA_MEMBER_TAG_UNMODIFIED 0x00
|
||||
#define GLOBAL_VTU_DATA_MEMBER_TAG_UNTAGGED 0x01
|
||||
#define GLOBAL_VTU_DATA_MEMBER_TAG_TAGGED 0x02
|
||||
#define GLOBAL_VTU_DATA_MEMBER_TAG_NON_MEMBER 0x03
|
||||
#define GLOBAL_STU_DATA_PORT_STATE_DISABLED 0x00
|
||||
#define GLOBAL_STU_DATA_PORT_STATE_BLOCKING 0x01
|
||||
#define GLOBAL_STU_DATA_PORT_STATE_LEARNING 0x02
|
||||
#define GLOBAL_STU_DATA_PORT_STATE_FORWARDING 0x03
|
||||
|
||||
/* Offset 0x05: VTU Operation Register */
|
||||
#define MV88E6XXX_G1_VTU_OP 0x05
|
||||
#define MV88E6XXX_G1_VTU_OP_BUSY 0x8000
|
||||
#define MV88E6XXX_G1_VTU_OP_MASK 0x7000
|
||||
#define MV88E6XXX_G1_VTU_OP_FLUSH_ALL 0x1000
|
||||
#define MV88E6XXX_G1_VTU_OP_NOOP 0x2000
|
||||
#define MV88E6XXX_G1_VTU_OP_VTU_LOAD_PURGE 0x3000
|
||||
#define MV88E6XXX_G1_VTU_OP_VTU_GET_NEXT 0x4000
|
||||
#define MV88E6XXX_G1_VTU_OP_STU_LOAD_PURGE 0x5000
|
||||
#define MV88E6XXX_G1_VTU_OP_STU_GET_NEXT 0x6000
|
||||
|
||||
/* Offset 0x06: VTU VID Register */
|
||||
#define MV88E6XXX_G1_VTU_VID 0x06
|
||||
#define MV88E6XXX_G1_VTU_VID_MASK 0x0fff
|
||||
#define MV88E6390_G1_VTU_VID_PAGE 0x2000
|
||||
#define MV88E6XXX_G1_VTU_VID_VALID 0x1000
|
||||
|
||||
/* Offset 0x07: VTU/STU Data Register 1
|
||||
* Offset 0x08: VTU/STU Data Register 2
|
||||
* Offset 0x09: VTU/STU Data Register 3
|
||||
*/
|
||||
#define MV88E6XXX_G1_VTU_DATA1 0x07
|
||||
#define MV88E6XXX_G1_VTU_DATA2 0x08
|
||||
#define MV88E6XXX_G1_VTU_DATA3 0x09
|
||||
#define MV88E6XXX_G1_VTU_STU_DATA_MASK 0x0003
|
||||
#define MV88E6XXX_G1_VTU_DATA_MEMBER_TAG_UNMODIFIED 0x0000
|
||||
#define MV88E6XXX_G1_VTU_DATA_MEMBER_TAG_UNTAGGED 0x0001
|
||||
#define MV88E6XXX_G1_VTU_DATA_MEMBER_TAG_TAGGED 0x0002
|
||||
#define MV88E6XXX_G1_VTU_DATA_MEMBER_TAG_NON_MEMBER 0x0003
|
||||
#define MV88E6XXX_G1_STU_DATA_PORT_STATE_DISABLED 0x0000
|
||||
#define MV88E6XXX_G1_STU_DATA_PORT_STATE_BLOCKING 0x0001
|
||||
#define MV88E6XXX_G1_STU_DATA_PORT_STATE_LEARNING 0x0002
|
||||
#define MV88E6XXX_G1_STU_DATA_PORT_STATE_FORWARDING 0x0003
|
||||
|
||||
/* Offset 0x0A: ATU Control Register */
|
||||
#define MV88E6XXX_G1_ATU_CTL 0x0a
|
||||
|
Atsaukties uz šo jaunā problēmā
Block a user