mirror of https://github.com/rusefi/bldc.git
bm: Exposed cortexm-functions to be used for nRF-targets.
Exposed cortexm_reset & cortexm_halt_request in order to be populated as operators for nRF-targets. Also added the already exposed cortexm_halt_resume functon to nRF. By this it will be possible to handle such blackmagic probe commands towards connected nRF-targets.
This commit is contained in:
parent
66fb7caa50
commit
1713eb4215
|
@ -52,9 +52,7 @@ static void cortexm_regs_read(target *t, void *data);
|
|||
static void cortexm_regs_write(target *t, const void *data);
|
||||
static uint32_t cortexm_pc_read(target *t);
|
||||
|
||||
static void cortexm_reset(target *t);
|
||||
static enum target_halt_reason cortexm_halt_poll(target *t, target_addr *watch);
|
||||
static void cortexm_halt_request(target *t);
|
||||
static int cortexm_fault_unwind(target *t);
|
||||
|
||||
static int cortexm_breakwatch_set(target *t, struct breakwatch *);
|
||||
|
@ -500,7 +498,7 @@ static void cortexm_pc_write(target *t, const uint32_t val)
|
|||
|
||||
/* The following three routines implement target halt/resume
|
||||
* using the core debug registers in the NVIC. */
|
||||
static void cortexm_reset(target *t)
|
||||
void cortexm_reset(target *t)
|
||||
{
|
||||
if ((t->target_options & CORTEXM_TOPT_INHIBIT_SRST) == 0) {
|
||||
platform_srst_set_val(true);
|
||||
|
@ -534,7 +532,7 @@ static void cortexm_reset(target *t)
|
|||
platform_delay(1);
|
||||
}
|
||||
|
||||
static void cortexm_halt_request(target *t)
|
||||
void cortexm_halt_request(target *t)
|
||||
{
|
||||
volatile struct exception e;
|
||||
TRY_CATCH (e, EXCEPTION_TIMEOUT) {
|
||||
|
|
|
@ -173,6 +173,8 @@ ADIv5_AP_t *cortexm_ap(target *t);
|
|||
|
||||
bool cortexm_attach(target *t);
|
||||
void cortexm_detach(target *t);
|
||||
void cortexm_reset(target *t);
|
||||
void cortexm_halt_request(target *t);
|
||||
void cortexm_halt_resume(target *t, bool step);
|
||||
int cortexm_run_stub(target *t, uint32_t loadaddr,
|
||||
uint32_t r0, uint32_t r1, uint32_t r2, uint32_t r3);
|
||||
|
|
|
@ -403,10 +403,10 @@ void nrf51_mdm_probe(ADIv5_AP_t *ap)
|
|||
t->regs_size = 4;
|
||||
t->regs_read = (void*)nop_function;
|
||||
t->regs_write = (void*)nop_function;
|
||||
t->reset = (void*)nop_function;
|
||||
t->halt_request = (void*)nop_function;
|
||||
t->reset = cortexm_reset;
|
||||
t->halt_request = cortexm_halt_request;
|
||||
//t->halt_poll = mdm_halt_poll;
|
||||
t->halt_resume = (void*)nop_function;
|
||||
t->halt_resume = cortexm_halt_resume;
|
||||
|
||||
target_add_commands(t, nrf51_mdm_cmd_list, t->driver);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue