X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Ftarget%2Ftarget.c;h=4d277c694b85412d0be46d1ee36f920cf0b22609;hp=b868383d1bed017654b2dfcceb232060293c0fe4;hb=cd74dd28911353674e599744c1acce8bf3a6a7a7;hpb=e22bad797f6c09c9ade8b8df63ff507fb9ba900d diff --git a/src/target/target.c b/src/target/target.c index b868383d1b..4d277c694b 100644 --- a/src/target/target.c +++ b/src/target/target.c @@ -1274,6 +1274,10 @@ COMMAND_HANDLER(handle_target_init_command) if (ERROR_OK != retval) return retval; + retval = command_run_line(CMD_CTX, "init_target_events"); + if (ERROR_OK != retval) + return retval; + retval = command_run_line(CMD_CTX, "init_board"); if (ERROR_OK != retval) return retval; @@ -2414,8 +2418,12 @@ static int handle_target(void *priv) return retval; } /* Since we succeeded, we reset backoff count */ - if (target->backoff.times > 0) - LOG_USER("Polling target %s succeeded again", target_name(target)); + if (target->backoff.times > 0) { + LOG_USER("Polling target %s succeeded again, trying to reexamine", target_name(target)); + target_reset_examined(target); + target_examine_one(target); + } + target->backoff.times = 0; } } @@ -3186,7 +3194,7 @@ static COMMAND_HELPER(handle_verify_image_command_internal, int verify) if (diffs == 0) LOG_ERROR("checksum mismatch - attempting binary compare"); - data = (uint8_t *)malloc(buf_cnt); + data = malloc(buf_cnt); /* Can we use 32bit word accesses? */ int size = 1; @@ -3618,7 +3626,7 @@ COMMAND_HANDLER(handle_profile_command) const uint32_t MAX_PROFILE_SAMPLE_NUM = 10000; uint32_t offset; - uint32_t num_of_sampels; + uint32_t num_of_samples; int retval = ERROR_OK; COMMAND_PARSE_NUMBER(u32, CMD_ARGV[0], offset); @@ -3635,13 +3643,13 @@ COMMAND_HANDLER(handle_profile_command) * Provide a way to use that more efficient mechanism. */ retval = target_profiling(target, samples, MAX_PROFILE_SAMPLE_NUM, - &num_of_sampels, offset); + &num_of_samples, offset); if (retval != ERROR_OK) { free(samples); return retval; } - assert(num_of_sampels <= MAX_PROFILE_SAMPLE_NUM); + assert(num_of_samples <= MAX_PROFILE_SAMPLE_NUM); retval = target_poll(target); if (retval != ERROR_OK) { @@ -3671,7 +3679,7 @@ COMMAND_HANDLER(handle_profile_command) COMMAND_PARSE_NUMBER(u32, CMD_ARGV[3], end_address); } - write_gmon(samples, num_of_sampels, CMD_ARGV[1], + write_gmon(samples, num_of_samples, CMD_ARGV[1], with_range, start_address, end_address); command_print(CMD_CTX, "Wrote %s", CMD_ARGV[1]); @@ -5098,7 +5106,7 @@ static int target_create(Jim_GetOptInfo *goi) target->target_number = new_target_number(); /* allocate memory for each unique target type */ - target->type = (struct target_type *)calloc(1, sizeof(struct target_type)); + target->type = calloc(1, sizeof(struct target_type)); memcpy(target->type, target_types[x], sizeof(struct target_type)); @@ -5484,7 +5492,7 @@ COMMAND_HANDLER(handle_fast_load_image_command) image_size = 0x0; retval = ERROR_OK; fastload_num = image.num_sections; - fastload = (struct FastLoad *)malloc(sizeof(struct FastLoad)*image.num_sections); + fastload = malloc(sizeof(struct FastLoad)*image.num_sections); if (fastload == NULL) { command_print(CMD_CTX, "out of memory"); image_close(&image); @@ -5708,7 +5716,7 @@ COMMAND_HANDLER(handle_test_mem_access_command) read_buf[i] = read_ref[i]; } command_print_sameline(CMD_CTX, - "Test read %d x %d @ %d to %saligned buffer: ", count, + "Test read %" PRIu32 " x %d @ %d to %saligned buffer: ", count, size, offset, host_offset ? "un" : ""); struct duration bench; @@ -5780,7 +5788,7 @@ out: for (size_t i = 0; i < host_bufsiz; i++) write_buf[i] = rand(); command_print_sameline(CMD_CTX, - "Test write %d x %d @ %d from %saligned buffer: ", count, + "Test write %" PRIu32 " x %d @ %d from %saligned buffer: ", count, size, offset, host_offset ? "un" : ""); retval = target_write_memory(target, wa->address, 1, num_bytes, test_pattern);