The exception being declarations for drivers.  Those should
arguably be collected into tables by linker scripts, so the
core doesn't need to know anything except how to cope with
a set of target or ETM drivers ... but not today.
---
Followup on an old request from Zach.  :)

 src/target/arm.h           |    9 +++++++++
 src/target/arm7_9_common.c |    8 --------
 src/target/arm9tdmi.c      |    2 --
 src/target/armv7m.h        |    6 ++++++
 src/target/cortex_m3.c     |    5 -----
 5 files changed, 15 insertions(+), 15 deletions(-)

--- a/src/target/arm.h
+++ b/src/target/arm.h
@@ -191,6 +191,13 @@ int armv4_5_run_algorithm(struct target 
                int num_reg_params, struct reg_param *reg_params,
                uint32_t entry_point, uint32_t exit_point,
                int timeout_ms, void *arch_info);
+int armv4_5_run_algorithm_inner(struct target *target,
+               int num_mem_params, struct mem_param *mem_params,
+               int num_reg_params, struct reg_param *reg_params,
+               uint32_t entry_point, uint32_t exit_point,
+               int timeout_ms, void *arch_info,
+               int (*run_it)(struct target *target, uint32_t exit_point,
+                               int timeout_ms, void *arch_info));
 
 int arm_checksum_memory(struct target *target,
                uint32_t address, uint32_t count, uint32_t *checksum);
@@ -200,6 +207,8 @@ int arm_blank_check_memory(struct target
 void arm_set_cpsr(struct arm *arm, uint32_t cpsr);
 struct reg *arm_reg_current(struct arm *arm, unsigned regnum);
 
+void arm_endianness(uint8_t *tmp, void *in, int size, int be, int flip);
+
 extern struct reg arm_gdb_dummy_fp_reg;
 extern struct reg arm_gdb_dummy_fps_reg;
 
--- a/src/target/arm7_9_common.c
+++ b/src/target/arm7_9_common.c
@@ -2679,14 +2679,6 @@ static const uint32_t dcc_code[] =
        0xeafffff9      /*    b   w                   */
 };
 
-extern int armv4_5_run_algorithm_inner(struct target *target,
-       int num_mem_params, struct mem_param *mem_params,
-       int num_reg_params, struct reg_param *reg_params,
-       uint32_t entry_point, uint32_t exit_point,
-       int timeout_ms, void *arch_info,
-       int (*run_it)(struct target *target, uint32_t exit_point,
-                       int timeout_ms, void *arch_info));
-
 int arm7_9_bulk_write_memory(struct target *target, uint32_t address, uint32_t 
count, uint8_t *buffer)
 {
        int retval;
--- a/src/target/arm9tdmi.c
+++ b/src/target/arm9tdmi.c
@@ -269,8 +269,6 @@ int arm9tdmi_clock_data_in(struct arm_jt
        return ERROR_OK;
 }
 
-extern void arm_endianness(uint8_t *tmp, void *in, int size, int be, int flip);
-
 static int arm9endianness(jtag_callback_data_t arg,
        jtag_callback_data_t size, jtag_callback_data_t be,
        jtag_callback_data_t captured)
--- a/src/target/armv7m.h
+++ b/src/target/armv7m.h
@@ -34,6 +34,12 @@
 #define ARMV7_GDB_HACKS
 #endif
 
+#ifdef ARMV7_GDB_HACKS
+extern uint8_t armv7m_gdb_dummy_cpsr_value[];
+extern struct reg armv7m_gdb_dummy_cpsr_reg;
+#endif
+
+
 enum armv7m_mode
 {
        ARMV7M_MODE_THREAD = 0,
--- a/src/target/cortex_m3.c
+++ b/src/target/cortex_m3.c
@@ -52,11 +52,6 @@ static void cortex_m3_enable_watchpoints
 static int cortex_m3_store_core_reg_u32(struct target *target,
                enum armv7m_regtype type, uint32_t num, uint32_t value);
 
-#ifdef ARMV7_GDB_HACKS
-extern uint8_t armv7m_gdb_dummy_cpsr_value[];
-extern struct reg armv7m_gdb_dummy_cpsr_reg;
-#endif
-
 static int cortexm3_dap_read_coreregister_u32(struct swjdp_common *swjdp,
                uint32_t *value, int regnum)
 {
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to