@@ -961,23 +961,18 @@ static int jlink_reset_safe(int trst, int srst)
961
961
962
962
COMMAND_HANDLER (jlink_usb_command )
963
963
{
964
- int tmp ;
965
-
966
964
if (CMD_ARGC != 1 )
967
965
return ERROR_COMMAND_SYNTAX_ERROR ;
968
966
969
- if (sscanf (CMD_ARGV [0 ], "%i" , & tmp ) != 1 ) {
970
- command_print (CMD , "Invalid USB address: %s" , CMD_ARGV [0 ]);
971
- return ERROR_COMMAND_ARGUMENT_INVALID ;
972
- }
967
+ unsigned int tmp ;
968
+ COMMAND_PARSE_NUMBER (uint , CMD_ARGV [0 ], tmp );
973
969
974
- if (tmp < JAYLINK_USB_ADDRESS_0 || tmp > JAYLINK_USB_ADDRESS_3 ) {
970
+ if (tmp > JAYLINK_USB_ADDRESS_3 ) {
975
971
command_print (CMD , "Invalid USB address: %s" , CMD_ARGV [0 ]);
976
972
return ERROR_COMMAND_ARGUMENT_INVALID ;
977
973
}
978
974
979
975
usb_address = tmp ;
980
-
981
976
use_usb_address = true;
982
977
983
978
return ERROR_OK ;
@@ -1035,38 +1030,35 @@ COMMAND_HANDLER(jlink_handle_free_memory_command)
1035
1030
1036
1031
COMMAND_HANDLER (jlink_handle_jlink_jtag_command )
1037
1032
{
1038
- int tmp ;
1039
- int version ;
1040
-
1041
1033
if (!CMD_ARGC ) {
1034
+ unsigned int version ;
1035
+
1042
1036
switch (jtag_command_version ) {
1043
- case JAYLINK_JTAG_VERSION_2 :
1044
- version = 2 ;
1045
- break ;
1046
- case JAYLINK_JTAG_VERSION_3 :
1047
- version = 3 ;
1048
- break ;
1049
- default :
1050
- return ERROR_FAIL ;
1037
+ case JAYLINK_JTAG_VERSION_2 :
1038
+ version = 2 ;
1039
+ break ;
1040
+ case JAYLINK_JTAG_VERSION_3 :
1041
+ version = 3 ;
1042
+ break ;
1043
+ default :
1044
+ return ERROR_FAIL ;
1051
1045
}
1052
1046
1053
- command_print (CMD , "JTAG command version: %i " , version );
1047
+ command_print (CMD , "JTAG command version: %u " , version );
1054
1048
} else if (CMD_ARGC == 1 ) {
1055
- if (sscanf (CMD_ARGV [0 ], "%i" , & tmp ) != 1 ) {
1056
- command_print (CMD , "Invalid argument: %s" , CMD_ARGV [0 ]);
1057
- return ERROR_COMMAND_ARGUMENT_INVALID ;
1058
- }
1049
+ uint8_t tmp ;
1050
+ COMMAND_PARSE_NUMBER (u8 , CMD_ARGV [0 ], tmp );
1059
1051
1060
1052
switch (tmp ) {
1061
- case 2 :
1062
- jtag_command_version = JAYLINK_JTAG_VERSION_2 ;
1063
- break ;
1064
- case 3 :
1065
- jtag_command_version = JAYLINK_JTAG_VERSION_3 ;
1066
- break ;
1067
- default :
1068
- command_print (CMD , "Invalid argument: %s" , CMD_ARGV [0 ]);
1069
- return ERROR_COMMAND_ARGUMENT_INVALID ;
1053
+ case 2 :
1054
+ jtag_command_version = JAYLINK_JTAG_VERSION_2 ;
1055
+ break ;
1056
+ case 3 :
1057
+ jtag_command_version = JAYLINK_JTAG_VERSION_3 ;
1058
+ break ;
1059
+ default :
1060
+ command_print (CMD , "Invalid argument: %s" , CMD_ARGV [0 ]);
1061
+ return ERROR_COMMAND_ARGUMENT_INVALID ;
1070
1062
}
1071
1063
} else {
1072
1064
return ERROR_COMMAND_SYNTAX_ERROR ;
@@ -1077,9 +1069,6 @@ COMMAND_HANDLER(jlink_handle_jlink_jtag_command)
1077
1069
1078
1070
COMMAND_HANDLER (jlink_handle_target_power_command )
1079
1071
{
1080
- int ret ;
1081
- int enable ;
1082
-
1083
1072
if (CMD_ARGC != 1 )
1084
1073
return ERROR_COMMAND_SYNTAX_ERROR ;
1085
1074
@@ -1089,16 +1078,10 @@ COMMAND_HANDLER(jlink_handle_target_power_command)
1089
1078
return ERROR_OK ;
1090
1079
}
1091
1080
1092
- if (!strcmp (CMD_ARGV [0 ], "on" )) {
1093
- enable = true;
1094
- } else if (!strcmp (CMD_ARGV [0 ], "off" )) {
1095
- enable = false;
1096
- } else {
1097
- command_print (CMD , "Invalid argument: %s" , CMD_ARGV [0 ]);
1098
- return ERROR_FAIL ;
1099
- }
1081
+ bool enable ;
1082
+ COMMAND_PARSE_ON_OFF (CMD_ARGV [0 ], enable );
1100
1083
1101
- ret = jaylink_set_target_power (devh , enable );
1084
+ int ret = jaylink_set_target_power (devh , enable );
1102
1085
1103
1086
if (ret != JAYLINK_OK ) {
1104
1087
command_print (CMD , "jaylink_set_target_power() failed: %s" ,
@@ -1407,8 +1390,6 @@ static int config_trace(bool enabled, enum tpiu_pin_protocol pin_protocol,
1407
1390
1408
1391
COMMAND_HANDLER (jlink_handle_config_usb_address_command )
1409
1392
{
1410
- uint8_t tmp ;
1411
-
1412
1393
if (!jaylink_has_cap (caps , JAYLINK_DEV_CAP_READ_CONFIG )) {
1413
1394
command_print (CMD , "Reading configuration is not supported by the "
1414
1395
"device" );
@@ -1418,10 +1399,8 @@ COMMAND_HANDLER(jlink_handle_config_usb_address_command)
1418
1399
if (!CMD_ARGC ) {
1419
1400
show_config_usb_address (CMD );
1420
1401
} else if (CMD_ARGC == 1 ) {
1421
- if (sscanf (CMD_ARGV [0 ], "%" SCNd8 , & tmp ) != 1 ) {
1422
- command_print (CMD , "Invalid USB address: %s" , CMD_ARGV [0 ]);
1423
- return ERROR_COMMAND_ARGUMENT_INVALID ;
1424
- }
1402
+ uint8_t tmp ;
1403
+ COMMAND_PARSE_NUMBER (u8 , CMD_ARGV [0 ], tmp );
1425
1404
1426
1405
if (tmp > JAYLINK_USB_ADDRESS_3 ) {
1427
1406
command_print (CMD , "Invalid USB address: %u" , tmp );
@@ -1880,7 +1859,7 @@ static const struct command_registration jlink_subcommand_handlers[] = {
1880
1859
.handler = & jlink_handle_target_power_command ,
1881
1860
.mode = COMMAND_EXEC ,
1882
1861
.help = "set the target power supply" ,
1883
- .usage = "<on|off>"
1862
+ .usage = "<0|1| on|off>"
1884
1863
},
1885
1864
{
1886
1865
.name = "freemem" ,
0 commit comments