diff options
author | zwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2009-05-31 11:31:27 +0000 |
---|---|---|
committer | zwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2009-05-31 11:31:27 +0000 |
commit | 0de78ed02c7e2caaf96eafb814c6059ceb9582b2 (patch) | |
tree | 1ad865a8a728eb17794be5d8589d0c26326bd348 | |
parent | 17fa4de8541ac12fad2ce836aa61d22dbf1642c8 (diff) | |
download | riscv-openocd-0de78ed02c7e2caaf96eafb814c6059ceb9582b2.zip riscv-openocd-0de78ed02c7e2caaf96eafb814c6059ceb9582b2.tar.gz riscv-openocd-0de78ed02c7e2caaf96eafb814c6059ceb9582b2.tar.bz2 |
Add target_get_name wrapper:
- replaces all accesses to target->type->name.
- add documentation in target_s to warn not to access field directly.
git-svn-id: svn://svn.berlios.de/openocd/trunk@1966 b42882b7-edfa-0310-969c-e2dbd0fdcd60
-rw-r--r-- | src/server/gdb_server.c | 7 | ||||
-rw-r--r-- | src/target/arm11.c | 2 | ||||
-rw-r--r-- | src/target/embeddedice.c | 2 | ||||
-rw-r--r-- | src/target/target.c | 12 | ||||
-rw-r--r-- | src/target/target.h | 11 |
5 files changed, 26 insertions, 8 deletions
diff --git a/src/server/gdb_server.c b/src/server/gdb_server.c index 23748e7..d5c3f35 100644 --- a/src/server/gdb_server.c +++ b/src/server/gdb_server.c @@ -2211,7 +2211,8 @@ int gdb_init(void) add_service("gdb", CONNECTION_PIPE, 0, 1, gdb_new_connection, gdb_input, gdb_connection_closed, gdb_service); - LOG_DEBUG("gdb service for target %s using pipes", target->type->name); + LOG_DEBUG("gdb service for target %s using pipes", + target_get_name(target)); } else { @@ -2222,7 +2223,9 @@ int gdb_init(void) add_service("gdb", CONNECTION_TCP, gdb_port + target->target_number, 1, gdb_new_connection, gdb_input, gdb_connection_closed, gdb_service); - LOG_DEBUG("gdb service for target %s at port %i", target->type->name, gdb_port + target->target_number); + LOG_DEBUG("gdb service for target %s at port %i", + target_get_name(target), + gdb_port + target->target_number); target = target->next; } } diff --git a/src/target/arm11.c b/src/target/arm11.c index 0dc6bf4..1555732 100644 --- a/src/target/arm11.c +++ b/src/target/arm11.c @@ -1847,7 +1847,7 @@ arm11_common_t * arm11_find_target(const char * arg) continue; /* if (t->type == arm11_target) */ - if (0 == strcmp(t->type->name, "arm11")) + if (0 == strcmp(target_get_name(t), "arm11")) return t->arch_info; } diff --git a/src/target/embeddedice.c b/src/target/embeddedice.c index 9d2be36..d96debd 100644 --- a/src/target/embeddedice.c +++ b/src/target/embeddedice.c @@ -184,7 +184,7 @@ reg_cache_t* embeddedice_build_reg_cache(target_t *target, arm7_9_common_t *arm7 * in some unusual bits. Let feroceon.c validate it * and do the appropriate setup itself. */ - if (strcmp(target->type->name, "feroceon") == 0) + if (strcmp(target_get_name(target), "feroceon") == 0) break; LOG_ERROR("unknown EmbeddedICE version (comms ctrl: 0x%8.8x)", buf_get_u32(reg_list[EICE_COMMS_CTRL].value, 0, 32)); } diff --git a/src/target/target.c b/src/target/target.c index 993b8c6..a54e065 100644 --- a/src/target/target.c +++ b/src/target/target.c @@ -484,6 +484,10 @@ int target_examine(void) } return retval; } +const char *target_get_name(struct target_s *target) +{ + return target->type->name; +} static int target_write_memory_imp(struct target_s *target, u32 address, u32 size, u32 count, u8 *buffer) { @@ -598,7 +602,7 @@ int target_init(struct command_context_s *cmd_ctx) if ((retval = target->type->init_target(cmd_ctx, target)) != ERROR_OK) { - LOG_ERROR("target '%s' init failed", target->type->name); + LOG_ERROR("target '%s' init failed", target_get_name(target)); return retval; } @@ -1451,7 +1455,7 @@ DumpTargets: command_print(cmd_ctx, "%2d: %-10s %-10s %-10s %10d %14s %s", target->target_number, target->cmd_name, - target->type->name, + target_get_name(target), Jim_Nvp_value2name_simple( nvp_target_endian, target->endianness )->name, target->tap->abs_chain_position, target->tap->dotted_name, @@ -3131,7 +3135,7 @@ void target_handle_event( target_t *target, enum target_event e ) LOG_DEBUG( "target: (%d) %s (%s) event: %d (%s) action: %s\n", target->target_number, target->cmd_name, - target->type->name, + target_get_name(target), e, Jim_Nvp_value2name_simple( nvp_target_event, e )->name, Jim_GetString( teap->body, NULL ) ); @@ -3220,7 +3224,7 @@ static int target_configure( Jim_GetOptInfo *goi, target_t *target ) return JIM_ERR; } } - Jim_SetResultString( goi->interp, target->type->name, -1 ); + Jim_SetResultString( goi->interp, target_get_name(target), -1 ); /* loop for more */ break; case TCFG_EVENT: diff --git a/src/target/target.h b/src/target/target.h index 3d9d8e9..91dd1b1 100644 --- a/src/target/target.h +++ b/src/target/target.h @@ -107,6 +107,10 @@ typedef struct working_area_s typedef struct target_type_s { + /** + * Name of the target. Do @b not access this field directly, use + * target_get_name() instead. + */ char *name; /** @@ -395,6 +399,13 @@ extern target_t* get_current_target(struct command_context_s *cmd_ctx); extern int get_num_by_target(target_t *query_target); extern target_t *get_target(const char *id); +/** + * Get the target name. + * + * This routine is a wrapper for the target->type->name field. + */ +extern const char *target_get_name(struct target_s *target); + /// @returns @c true if the target has been examined. extern bool target_was_examined(struct target_s *target); /// Sets the @c examined flag for the given target. |