aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorCodrin Ciubotariu2015-07-24 16:55:34 +0300
committerYork Sun2015-09-21 08:29:48 -0700
commit21d214fcd0a12c75ebb9c675f0f07b8e69f6cb44 (patch)
treeb75f06d3a8166e96e4e8fa9f53a895bbf09107c6 /include
parenta2477924cd302cfae730ebefb431814eb99ad861 (diff)
drivers/net/vsc9953: Add command for shared/private VLAN learning
The command: ethsw vlan fdb { [help] | show | shared | private } - make VLAN learning shared or private" configures the FDB to share the FDB entries learned on multiple VLANs or to keep them separated. By default, the FBD uses private VLAN learning. This command has also been added to the ethsw generic parser from common/cmd_ethsw.c Signed-off-by: Johnson Leung <johnson.leung@freescale.com> Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@freescale.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com> Reviewed-by: York Sun <yorksun@freescale.com>
Diffstat (limited to 'include')
-rw-r--r--include/ethsw.h4
-rw-r--r--include/vsc9953.h3
2 files changed, 7 insertions, 0 deletions
diff --git a/include/ethsw.h b/include/ethsw.h
index cc9708e9ac4..18d2b26b4bd 100644
--- a/include/ethsw.h
+++ b/include/ethsw.h
@@ -37,6 +37,8 @@ enum ethsw_keyword_id {
ethsw_id_egress,
ethsw_id_tag,
ethsw_id_classified,
+ ethsw_id_shared,
+ ethsw_id_private,
ethsw_id_count, /* keep last */
};
@@ -80,6 +82,8 @@ struct ethsw_command_func {
int (*port_untag_set)(struct ethsw_command_def *parsed_cmd);
int (*port_egr_vlan_show)(struct ethsw_command_def *parsed_cmd);
int (*port_egr_vlan_set)(struct ethsw_command_def *parsed_cmd);
+ int (*vlan_learn_show)(struct ethsw_command_def *parsed_cmd);
+ int (*vlan_learn_set)(struct ethsw_command_def *parsed_cmd);
};
int ethsw_define_functions(const struct ethsw_command_func *cmd_func);
diff --git a/include/vsc9953.h b/include/vsc9953.h
index 12b7acecad1..24a22a39258 100644
--- a/include/vsc9953.h
+++ b/include/vsc9953.h
@@ -135,6 +135,9 @@
/* Macros for vsc9953_qsys_sys.switch_port_mode register */
#define VSC9953_PORT_ENA 0x00002000
+/* Macros for vsc9953_ana_ana.agen_ctrl register */
+#define VSC9953_FID_MASK_ALL 0x00fff000
+
/* Macros for vsc9953_ana_ana.adv_learn register */
#define VSC9953_VLAN_CHK 0x00000400