app/testpmd: add default MAC set command
authorPascal Mazon <pascal.mazon@6wind.com>
Mon, 13 Mar 2017 10:27:07 +0000 (11:27 +0100)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Wed, 15 Mar 2017 17:21:49 +0000 (18:21 +0100)
Signed-off-by: Pascal Mazon <pascal.mazon@6wind.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
app/test-pmd/cmdline.c
doc/guides/testpmd_app_ug/testpmd_funcs.rst

index 92d4f6a..47f935d 100644 (file)
@@ -405,6 +405,9 @@ static void cmd_help_long_parsed(void *parsed_result,
                        "mac_addr remove (port_id) (XX:XX:XX:XX:XX:XX)\n"
                        "    Remove a MAC address from port_id.\n\n"
 
+                       "mac_addr set (port_id) (XX:XX:XX:XX:XX:XX)\n"
+                       "    Set the default MAC address for port_id.\n\n"
+
                        "mac_addr add port (port_id) vf (vf_id) (mac_address)\n"
                        "    Add a MAC address for a VF on the port.\n\n"
 
@@ -6356,6 +6359,9 @@ static void cmd_mac_addr_parsed(void *parsed_result,
 
        if (strcmp(res->what, "add") == 0)
                ret = rte_eth_dev_mac_addr_add(res->port_num, &res->address, 0);
+       else if (strcmp(res->what, "set") == 0)
+               ret = rte_eth_dev_default_mac_addr_set(res->port_num,
+                                                      &res->address);
        else
                ret = rte_eth_dev_mac_addr_remove(res->port_num, &res->address);
 
@@ -6370,7 +6376,7 @@ cmdline_parse_token_string_t cmd_mac_addr_cmd =
                                "mac_addr");
 cmdline_parse_token_string_t cmd_mac_addr_what =
        TOKEN_STRING_INITIALIZER(struct cmd_mac_addr_result, what,
-                               "add#remove");
+                               "add#remove#set");
 cmdline_parse_token_num_t cmd_mac_addr_portnum =
                TOKEN_NUM_INITIALIZER(struct cmd_mac_addr_result, port_num, UINT8);
 cmdline_parse_token_etheraddr_t cmd_mac_addr_addr =
@@ -6379,8 +6385,8 @@ cmdline_parse_token_etheraddr_t cmd_mac_addr_addr =
 cmdline_parse_inst_t cmd_mac_addr = {
        .f = cmd_mac_addr_parsed,
        .data = (void *)0,
-       .help_str = "mac_addr add|remove <port_id> <mac_addr>: "
-                       "Add/Remove MAC address on port_id",
+       .help_str = "mac_addr add|remove|set <port_id> <mac_addr>: "
+                       "Add/Remove/Set MAC address on port_id",
        .tokens = {
                (void *)&cmd_mac_addr_cmd,
                (void *)&cmd_mac_addr_what,
index 64ed028..bdc6a14 100644 (file)
@@ -837,6 +837,13 @@ Add an alternative MAC address for a VF to a port::
 
    testpmd> mac_add add port (port_id) vf (vf_id) (XX:XX:XX:XX:XX:XX)
 
+mac_addr set
+~~~~~~~~~~~~
+
+Set the default MAC address for a port::
+
+   testpmd> mac_addr set (port_id) (XX:XX:XX:XX:XX:XX)
+
 mac_addr set (for VF)
 ~~~~~~~~~~~~~~~~~~~~~