Support to configure 25G and 50G speeds is missing from testpmd.
This patch also updates the testpmd user guide accordingly.

Signed-off-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
---
 app/test-pmd/cmdline.c                      | 14 +++++++++-----
 doc/guides/testpmd_app_ug/testpmd_funcs.rst |  2 +-
 2 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
index 17d238f..6ffa771 100644
--- a/app/test-pmd/cmdline.c
+++ b/app/test-pmd/cmdline.c
@@ -545,7 +545,7 @@ static void cmd_help_long_parsed(void *parsed_result,
                        "    Detach physical or virtual dev by port_id\n\n"

                        "port config (port_id|all)"
-                       " speed (10|100|1000|10000|40000|100000|auto)"
+                       " speed 
(10|100|1000|10000|25000|40000|50000|100000|auto)"
                        " duplex (half|full|auto)\n"
                        "    Set speed and duplex for all ports or port_id\n\n"

@@ -1016,8 +1016,12 @@ parse_and_check_speed_duplex(char *speedstr, char 
*duplexstr, uint32_t *speed)
                        *speed = ETH_LINK_SPEED_1G;
                } else if (!strcmp(speedstr, "10000")) {
                        *speed = ETH_LINK_SPEED_10G;
+               } else if (!strcmp(speedstr, "25000")) {
+                       *speed = ETH_LINK_SPEED_25G;
                } else if (!strcmp(speedstr, "40000")) {
                        *speed = ETH_LINK_SPEED_40G;
+               } else if (!strcmp(speedstr, "50000")) {
+                       *speed = ETH_LINK_SPEED_50G;
                } else if (!strcmp(speedstr, "100000")) {
                        *speed = ETH_LINK_SPEED_100G;
                } else if (!strcmp(speedstr, "auto")) {
@@ -1067,7 +1071,7 @@ cmdline_parse_token_string_t cmd_config_speed_all_item1 =
        TOKEN_STRING_INITIALIZER(struct cmd_config_speed_all, item1, "speed");
 cmdline_parse_token_string_t cmd_config_speed_all_value1 =
        TOKEN_STRING_INITIALIZER(struct cmd_config_speed_all, value1,
-                                               
"10#100#1000#10000#40000#100000#auto");
+                                               
"10#100#1000#10000#25000#40000#50000#100000#auto");
 cmdline_parse_token_string_t cmd_config_speed_all_item2 =
        TOKEN_STRING_INITIALIZER(struct cmd_config_speed_all, item2, "duplex");
 cmdline_parse_token_string_t cmd_config_speed_all_value2 =
@@ -1077,7 +1081,7 @@ cmdline_parse_token_string_t cmd_config_speed_all_value2 =
 cmdline_parse_inst_t cmd_config_speed_all = {
        .f = cmd_config_speed_all_parsed,
        .data = NULL,
-       .help_str = "port config all speed 10|100|1000|10000|40000|100000|auto 
duplex "
+       .help_str = "port config all speed 
10|100|1000|10000|25000|40000|50000|100000|auto duplex "
                                                        "half|full|auto",
        .tokens = {
                (void *)&cmd_config_speed_all_port,
@@ -1141,7 +1145,7 @@ cmdline_parse_token_string_t 
cmd_config_speed_specific_item1 =
                                                                "speed");
 cmdline_parse_token_string_t cmd_config_speed_specific_value1 =
        TOKEN_STRING_INITIALIZER(struct cmd_config_speed_specific, value1,
-                                               
"10#100#1000#10000#40000#100000#auto");
+                                               
"10#100#1000#10000#25000#40000#50000#100000#auto");
 cmdline_parse_token_string_t cmd_config_speed_specific_item2 =
        TOKEN_STRING_INITIALIZER(struct cmd_config_speed_specific, item2,
                                                                "duplex");
@@ -1152,7 +1156,7 @@ cmdline_parse_token_string_t 
cmd_config_speed_specific_value2 =
 cmdline_parse_inst_t cmd_config_speed_specific = {
        .f = cmd_config_speed_specific_parsed,
        .data = NULL,
-       .help_str = "port config X speed 10|100|1000|10000|40000|100000|auto 
duplex "
+       .help_str = "port config X speed 
10|100|1000|10000|25000|40000|50000|100000|auto duplex "
                                                        "half|full|auto",
        .tokens = {
                (void *)&cmd_config_speed_specific_port,
diff --git a/doc/guides/testpmd_app_ug/testpmd_funcs.rst 
b/doc/guides/testpmd_app_ug/testpmd_funcs.rst
index f87e0c2..e1eea34 100644
--- a/doc/guides/testpmd_app_ug/testpmd_funcs.rst
+++ b/doc/guides/testpmd_app_ug/testpmd_funcs.rst
@@ -1167,7 +1167,7 @@ port config - speed

 Set the speed and duplex mode for all ports or a specific port::

-   testpmd> port config (port_id|all) speed 
(10|100|1000|10000|40000|100000|auto) \
+   testpmd> port config (port_id|all) speed 
(10|100|1000|10000|25000|40000|50000|100000|auto) \
             duplex (half|full|auto)

 port config - queues/descriptors
-- 
2.4.3

Reply via email to