cl_utils: Allow to connect under reset.
This commit is contained in:
parent
919d9320fd
commit
e48d9ebc92
|
@ -118,7 +118,8 @@ static void cl_help(char **argv, BMP_CL_OPTIONS_t *opt)
|
||||||
printf("\t-s \"string\"\t: Use dongle with (partial) "
|
printf("\t-s \"string\"\t: Use dongle with (partial) "
|
||||||
"serial number \"string\"\n");
|
"serial number \"string\"\n");
|
||||||
printf("\t-c \"string\"\t: Use ftdi dongle with type \"string\"\n");
|
printf("\t-c \"string\"\t: Use ftdi dongle with type \"string\"\n");
|
||||||
printf("\t-n\t\t: Exit immediate if no device found\n");
|
printf("\t-C\t\t: Connect under reset\n");
|
||||||
|
printf("\t-n\t\t: Exit immediate if no device found\n");
|
||||||
printf("\tRun mode related options:\n");
|
printf("\tRun mode related options:\n");
|
||||||
printf("\t-t\t\t: Scan SWD, with no target found scan jtag and exit\n");
|
printf("\t-t\t\t: Scan SWD, with no target found scan jtag and exit\n");
|
||||||
printf("\t-E\t\t: Erase flash until flash end or for given size\n");
|
printf("\t-E\t\t: Erase flash until flash end or for given size\n");
|
||||||
|
@ -143,7 +144,7 @@ void cl_init(BMP_CL_OPTIONS_t *opt, int argc, char **argv)
|
||||||
opt->opt_target_dev = 1;
|
opt->opt_target_dev = 1;
|
||||||
opt->opt_flash_start = 0x08000000;
|
opt->opt_flash_start = 0x08000000;
|
||||||
opt->opt_flash_size = 16 * 1024 *1024;
|
opt->opt_flash_size = 16 * 1024 *1024;
|
||||||
while((c = getopt(argc, argv, "Ehv::s:c:nN:tVta:S:jprR")) != -1) {
|
while((c = getopt(argc, argv, "Ehv::s:c:CnN:tVta:S:jprR")) != -1) {
|
||||||
switch(c) {
|
switch(c) {
|
||||||
case 'c':
|
case 'c':
|
||||||
if (optarg)
|
if (optarg)
|
||||||
|
@ -159,6 +160,9 @@ void cl_init(BMP_CL_OPTIONS_t *opt, int argc, char **argv)
|
||||||
case 'j':
|
case 'j':
|
||||||
opt->opt_usejtag = true;
|
opt->opt_usejtag = true;
|
||||||
break;
|
break;
|
||||||
|
case 'C':
|
||||||
|
opt->opt_connect_under_reset = true;
|
||||||
|
break;
|
||||||
case 'n':
|
case 'n':
|
||||||
opt->opt_no_wait = true;
|
opt->opt_no_wait = true;
|
||||||
break;
|
break;
|
||||||
|
@ -235,6 +239,9 @@ int cl_execute(BMP_CL_OPTIONS_t *opt)
|
||||||
platform_delay(500);
|
platform_delay(500);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
if (opt->opt_connect_under_reset)
|
||||||
|
printf("Connecting under reset\n");
|
||||||
|
platform_srst_set_val(opt->opt_connect_under_reset);
|
||||||
if (opt->opt_mode == BMP_MODE_TEST)
|
if (opt->opt_mode == BMP_MODE_TEST)
|
||||||
printf("Running in Test Mode\n");
|
printf("Running in Test Mode\n");
|
||||||
if (opt->opt_usejtag) {
|
if (opt->opt_usejtag) {
|
||||||
|
|
|
@ -39,6 +39,7 @@ typedef struct BMP_CL_OPTIONS_s {
|
||||||
bool opt_usejtag;
|
bool opt_usejtag;
|
||||||
bool opt_no_wait;
|
bool opt_no_wait;
|
||||||
bool opt_tpwr;
|
bool opt_tpwr;
|
||||||
|
bool opt_connect_under_reset;
|
||||||
char *opt_flash_file;
|
char *opt_flash_file;
|
||||||
char *opt_serial;
|
char *opt_serial;
|
||||||
char *opt_cable;
|
char *opt_cable;
|
||||||
|
|
Loading…
Reference in New Issue