More CortexA8 debug register definitions.
[fw/openocd] / src / target / target.h
index 2fd0037bda1e503f46a63b49911d7ecf7d3ad615..509bfd2a22ac90496b83db6f8978c51eafd9d06b 100644 (file)
@@ -2,7 +2,7 @@
  *   Copyright (C) 2005 by Dominic Rath                                    *
  *   Dominic.Rath@gmx.de                                                   *
  *                                                                         *
- *   Copyright (C) 2007,2008 Øyvind Harboe                                 *
+ *   Copyright (C) 2007,2008 Øyvind Harboe                                 *
  *   oyvind.harboe@zylin.com                                               *
  *                                                                         *
  *   Copyright (C) 2008 by Spencer Oliver                                  *
@@ -42,7 +42,11 @@ struct command_context_s;
  * TARGET_RESET   = 3: the target is being held in reset (only a temporary state,
  * not sure how this is used with all the recent changes)
  * TARGET_DEBUG_RUNNING = 4: the target is running, but it is executing code on
- * behalf of the debugger (e.g. algorithm for flashing) */
+ * behalf of the debugger (e.g. algorithm for flashing) 
+ *
+ * also see: target_state_name();
+ */
+
 
 enum target_state
 {
@@ -116,7 +120,7 @@ typedef struct target_s
 {
        target_type_t *type;                            /* target type definition (name, access functions) */
        const char *cmd_name;                           /* tcl Name of target */
-       int target_number;                                      /* generaly, target index but may not be in order */
+       int target_number;                                      /* DO NOT USE!  field to be removed in 2010 */
        jtag_tap_t *tap;                                        /* where on the jtag chain is this */
        const char *variant;                            /* what varient of this chip is it? */
        target_event_action_t *event_action;
@@ -131,6 +135,7 @@ typedef struct target_s
        struct working_area_s *working_areas;/* list of allocated working areas */
        enum target_debug_reason debug_reason;/* reason why the target entered debug state */
        enum target_endianess endianness;       /* target endianess */
+       // also see: target_state_name()
        enum target_state state;                        /* the current backend-state (running, halted, ...) */
        struct reg_cache_s *reg_cache;          /* the first register cache of the target (core regs) */
        struct breakpoint_s *breakpoints;       /* list of breakpoints */
@@ -245,7 +250,6 @@ extern int target_call_timer_callbacks(void);
 extern int target_call_timer_callbacks_now(void);
 
 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);
 
 /**
@@ -357,6 +361,9 @@ extern int target_checksum_memory(struct target_s *target, uint32_t address, uin
 extern int target_blank_check_memory(struct target_s *target, uint32_t address, uint32_t size, uint32_t* blank);
 extern int target_wait_state(target_t *target, enum target_state state, int ms);
 
+/** Return the *name* of this targets current state */
+const char *target_state_name( target_t *target );
+
 /* DANGER!!!!!
  *
  * if "area" passed in to target_alloc_working_area() points to a memory