int argc, Jim_Obj *const *argv);
static int target_mem2array(Jim_Interp *interp, struct target *target,
int argc, Jim_Obj *const *argv);
+static int target_register_user_commands(struct command_context *cmd_ctx);
/* targets */
extern struct target_type arm7tdmi_target;
extern struct target_type dsp563xx_target;
extern struct target_type testee_target;
-struct target_type *target_types[] =
+static struct target_type *target_types[] =
{
&arm7tdmi_target,
&arm9tdmi_target,
};
struct target *all_targets = NULL;
-struct target_event_callback *target_event_callbacks = NULL;
-struct target_timer_callback *target_timer_callbacks = NULL;
+static struct target_event_callback *target_event_callbacks = NULL;
+static struct target_timer_callback *target_timer_callbacks = NULL;
static const Jim_Nvp nvp_assert[] = {
{ .name = "assert", NVP_ASSERT },
{ .value = -1, .name = NULL }
};
-const char *target_strerror_safe(int err)
+static const char *target_strerror_safe(int err)
{
const Jim_Nvp *n;
}
/* read a uint8_t from a buffer in target memory endianness */
-uint8_t target_buffer_get_u8(struct target *target, const uint8_t *buffer)
+static uint8_t target_buffer_get_u8(struct target *target, const uint8_t *buffer)
{
return *buffer & 0x0ff;
}
}
/* write a uint8_t to a buffer in target memory endianness */
-void target_buffer_set_u8(struct target *target, uint8_t *buffer, uint8_t value)
+static void target_buffer_set_u8(struct target *target, uint8_t *buffer, uint8_t value)
{
*buffer = value;
}
return retval;
}
-int target_process_reset(struct command_context *cmd_ctx, enum target_reset_mode reset_mode)
+static int target_process_reset(struct command_context *cmd_ctx, enum target_reset_mode reset_mode)
{
char buf[100];
int retval;
return target->type->read_memory(target, address, size, count, buffer);
}
-int target_read_phys_memory(struct target *target,
+static int target_read_phys_memory(struct target *target,
uint32_t address, uint32_t size, uint32_t count, uint8_t *buffer)
{
return target->type->read_phys_memory(target, address, size, count, buffer);
return target->type->write_memory(target, address, size, count, buffer);
}
-int target_write_phys_memory(struct target *target,
+static int target_write_phys_memory(struct target *target,
uint32_t address, uint32_t size, uint32_t count, uint8_t *buffer)
{
return target->type->write_phys_memory(target, address, size, count, buffer);
return ERROR_OK;
}
-int target_init(struct command_context *cmd_ctx)
+static int target_init(struct command_context *cmd_ctx)
{
struct target *target;
int retval;
return ERROR_OK;
}
-int target_unregister_timer_callback(int (*callback)(void *priv), void *priv)
+static int target_unregister_timer_callback(int (*callback)(void *priv), void *priv)
{
struct target_timer_callback **p = &target_timer_callbacks;
struct target_timer_callback *c = target_timer_callbacks;
return target_call_timer_callbacks_check_time(0);
}
-int target_alloc_working_area(struct target *target, uint32_t size, struct working_area **area)
+int target_alloc_working_area_try(struct target *target, uint32_t size, struct working_area **area)
{
struct working_area *c = target->working_areas;
struct working_area *new_wa = NULL;
if (free_size < size)
{
- LOG_WARNING("not enough working area available(requested %u, free %u)",
- (unsigned)(size), (unsigned)(free_size));
return ERROR_TARGET_RESOURCE_NOT_AVAILABLE;
}
return ERROR_OK;
}
-int target_free_working_area_restore(struct target *target, struct working_area *area, int restore)
+int target_alloc_working_area(struct target *target, uint32_t size, struct working_area **area)
+{
+ int retval;
+
+ retval = target_alloc_working_area_try(target, size, area);
+ if (retval == ERROR_TARGET_RESOURCE_NOT_AVAILABLE)
+ {
+ LOG_WARNING("not enough working area available(requested %u)", (unsigned)(size));
+ }
+ return retval;
+
+}
+
+static int target_free_working_area_restore(struct target *target, struct working_area *area, int restore)
{
if (area->free)
return ERROR_OK;
/* free resources and restore memory, if restoring memory fails,
* free up resources anyway
*/
-void target_free_all_working_areas_restore(struct target *target, int restore)
+static void target_free_all_working_areas_restore(struct target *target, int restore)
{
struct working_area *c = target->working_areas;
return JIM_OK;
}
-void target_all_handle_event(enum target_event e)
-{
- struct target *target;
-
- LOG_DEBUG("**all*targets: event: %d, %s",
- (int)e,
- Jim_Nvp_value2name_simple(nvp_target_event, e)->name);
-
- target = all_targets;
- while (target) {
- target_handle_event(target, e);
- target = target->next;
- }
-}
-
-
/* FIX? should we propagate errors here rather than printing them
* and continuing?
*/
},
COMMAND_REGISTRATION_DONE
};
-int target_register_user_commands(struct command_context *cmd_ctx)
+static int target_register_user_commands(struct command_context *cmd_ctx)
{
int retval = ERROR_OK;
if ((retval = target_request_register_commands(cmd_ctx)) != ERROR_OK)