diff options
| author | fenghuijie <[email protected]> | 2021-07-05 18:33:22 +0800 |
|---|---|---|
| committer | fenghuijie <[email protected]> | 2021-07-05 18:33:22 +0800 |
| commit | 0015af02e4f08ab47f2d2fefcb7c1aca1682bfda (patch) | |
| tree | fded7632c1ea03699173ce94ba627544669786f1 /libcpu/arm/cortex-a/interrupt.c | |
| parent | e933c1f6105caf4e68bd57bc5521767b32063a5f (diff) | |
调整代码,以支持cpu usage
Diffstat (limited to 'libcpu/arm/cortex-a/interrupt.c')
| -rw-r--r-- | libcpu/arm/cortex-a/interrupt.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/libcpu/arm/cortex-a/interrupt.c b/libcpu/arm/cortex-a/interrupt.c index 474a23fee1..f90f1c0094 100644 --- a/libcpu/arm/cortex-a/interrupt.c +++ b/libcpu/arm/cortex-a/interrupt.c @@ -27,6 +27,20 @@ struct rt_irq_desc isr_table[MAX_HANDLERS]; rt_uint32_t rt_interrupt_from_thread = 0; rt_uint32_t rt_interrupt_to_thread = 0; rt_uint32_t rt_thread_switch_interrupt_flag = 0; + +#ifdef RT_USING_HOOK +static void (*rt_interrupt_switch_hook)(void); + +void rt_interrupt_switch_sethook(void (*hook)(void)) +{ + rt_interrupt_switch_hook = hook; +} +#endif + +void rt_interrupt_hook(void) +{ + RT_OBJECT_HOOK_CALL(rt_interrupt_switch_hook, ()); +} #endif const unsigned int VECTOR_BASE = 0x00; |
