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