diff --git a/src/target/arm11.c b/src/target/arm11.c index 30dbedb93..fd9b46555 100644 --- a/src/target/arm11.c +++ b/src/target/arm11.c @@ -1219,13 +1219,6 @@ static int arm11_remove_watchpoint(struct target *target, return ERROR_FAIL; } -static int arm11_mrc(struct target *target, int cpnum, - uint32_t op1, uint32_t op2, - uint32_t CRn, uint32_t CRm, uint32_t *value); -static int arm11_mcr(struct target *target, int cpnum, - uint32_t op1, uint32_t op2, uint32_t CRn, - uint32_t CRm, uint32_t value); - static int arm11_target_create(struct target *target, Jim_Interp *interp) { struct arm11_common *arm11; @@ -1245,9 +1238,6 @@ static int arm11_target_create(struct target *target, Jim_Interp *interp) armv4_5_init_arch_info(target, &arm11->arm); - arm11->arm.mrc = arm11_mrc; - arm11->arm.mcr = arm11_mcr; - arm11->target = target; arm11->jtag_info.tap = target->tap; @@ -1520,71 +1510,6 @@ COMMAND_HANDLER(arm11_handle_vcr) return ERROR_OK; } -static const uint32_t arm11_coproc_instruction_limits[] = -{ - 15, /* coprocessor */ - 7, /* opcode 1 */ - 15, /* CRn */ - 15, /* CRm */ - 7, /* opcode 2 */ - 0xFFFFFFFF, /* value */ -}; - -static int arm11_mrc_inner(struct target *target, int cpnum, - uint32_t op1, uint32_t op2, uint32_t CRn, uint32_t CRm, - uint32_t *value, bool read) -{ - int retval; - struct arm11_common *arm11 = target_to_arm11(target); - - if (target->state != TARGET_HALTED) - { - LOG_ERROR("Target not halted"); - return ERROR_FAIL; - } - - uint32_t instr = 0xEE000010 | - (cpnum << 8) | - (op1 << 21) | - (CRn << 16) | - (CRm << 0) | - (op2 << 5); - - if (read) - instr |= 0x00100000; - - retval = arm11_run_instr_data_prepare(arm11); - if (retval != ERROR_OK) - return retval; - - if (read) - { - retval = arm11_run_instr_data_from_core_via_r0(arm11, instr, value); - if (retval != ERROR_OK) - return retval; - } - else - { - retval = arm11_run_instr_data_to_core_via_r0(arm11, instr, *value); - if (retval != ERROR_OK) - return retval; - } - - return arm11_run_instr_data_finish(arm11); -} - -static int arm11_mrc(struct target *target, int cpnum, - uint32_t op1, uint32_t op2, uint32_t CRn, uint32_t CRm, uint32_t *value) -{ - return arm11_mrc_inner(target, cpnum, op1, op2, CRn, CRm, value, true); -} - -static int arm11_mcr(struct target *target, int cpnum, - uint32_t op1, uint32_t op2, uint32_t CRn, uint32_t CRm, uint32_t value) -{ - return arm11_mrc_inner(target, cpnum, op1, op2, CRn, CRm, &value, false); -} - static const struct command_registration arm11_mw_command_handlers[] = { { .name = "burst",