Templates: Added shortcut check & event signaling version for shortcuts case

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This commit is contained in:
Alberto Escolar Piedras 2023-09-20 15:13:13 +02:00
parent a880cd68c0
commit 49bcea209c
1 changed files with 18 additions and 1 deletions

View File

@ -73,9 +73,22 @@
_NHW_XPPI_EVENT(peri, peri_regs, inst, event); \
}
/*
* Signal an event. Like NHW_SIGNAL_EVENT()
* but when the event has shortcuts.
*/
#define NHW_SIGNAL_EVENT_ns(peri, peri_regs, event) \
void nhw_##peri##_signal_EVENTS_##event##_noshort(unsigned int inst) { \
peri_regs EVENTS_##event = 1; \
nhw_##peri##_eval_interrupt(inst); \
_NHW_XPPI_EVENT(peri, peri_regs, inst, event); \
}
#define NHW_SIGNAL_EVENT_si(peri, event) \
NHW_SIGNAL_EVENT(peri, NRF_##peri##_regs. , event)
#define NHW_SIGNAL_EVENT_ns_si(peri, event) \
NHW_SIGNAL_EVENT_ns(peri, NRF_##peri##_regs. , event)
#define NHW_SIDEEFFECTS_INTSET_si(peri, peri_regs, inten)\
void nhw_##peri##_regw_sideeffects_INTENSET(void) { \
@ -96,10 +109,14 @@
} \
}
#define NHW_CHECK_INTERRUPT_si(peri, event, inten) \
if (NRF_##peri##_regs.EVENTS_##event && (inten & peri##_INTENSET_##event##_Msk)){ \
new_int_line = true; \
}
#define NHW_SHORT_si(peri, event, task) \
if (NRF_##peri##_regs.SHORTS & peri##_SHORTS_##event##_##task##_Msk) { \
nhw_##peri##_TASK_##task(); \
}
#endif /* _NRF_HW_MODEL_NHW_TEMPLATES_H */