summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorCodrin Ciubotariu <codrin.ciubotariu@freescale.com>2015-07-24 16:55:30 +0300
committerYork Sun <yorksun@freescale.com>2015-09-21 08:29:47 -0700
commit68c929da6bf754ace639b2159e2d5b9e22323aaa (patch)
tree0c4be2ff82ca86a48eeaee9d330e5318202ad89a /include
parent86719f0cd55bc13186798217b08fa6a048eda27c (diff)
drivers/net/vsc9953: Add commands to enable/disable HW learning
The command: ethsw [port <port_no>] learning { [help] | show | auto | disable } can be used to enable/disable HW learning on a port. This patch also adds this command to the generic ethsw parser from cmd_ethsw. 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.h6
2 files changed, 10 insertions, 0 deletions
diff --git a/include/ethsw.h b/include/ethsw.h
index 8f1c4145a1..6d2f0de61e 100644
--- a/include/ethsw.h
+++ b/include/ethsw.h
@@ -22,6 +22,8 @@ enum ethsw_keyword_id {
ethsw_id_disable,
ethsw_id_statistics,
ethsw_id_clear,
+ ethsw_id_learning,
+ ethsw_id_auto,
ethsw_id_count, /* keep last */
};
@@ -45,6 +47,8 @@ struct ethsw_command_func {
int (*port_show)(struct ethsw_command_def *parsed_cmd);
int (*port_stats)(struct ethsw_command_def *parsed_cmd);
int (*port_stats_clear)(struct ethsw_command_def *parsed_cmd);
+ int (*port_learn)(struct ethsw_command_def *parsed_cmd);
+ int (*port_learn_show)(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 83c4c89d62..49215e6cc1 100644
--- a/include/vsc9953.h
+++ b/include/vsc9953.h
@@ -105,6 +105,12 @@
#define VSC9953_VLAN_CMD_WRITE 0x00000002
#define VSC9953_VLAN_CMD_INIT 0x00000003
+/* Macros for vsc9953_ana_port.port_cfg register */
+#define VSC9953_PORT_CFG_LEARN_ENA 0x00000080
+#define VSC9953_PORT_CFG_LEARN_AUTO 0x00000100
+#define VSC9953_PORT_CFG_LEARN_CPU 0x00000200
+#define VSC9953_PORT_CFG_LEARN_DROP 0x00000400
+
/* Macros for vsc9953_qsys_sys.switch_port_mode register */
#define VSC9953_PORT_ENA 0x00002000