diff options
| author | GuEe-GUI <[email protected]> | 2026-08-15 22:36:46 +0800 |
|---|---|---|
| committer | Rbb666 <[email protected]> | 2026-08-16 19:56:03 +0800 |
| commit | f7258a6bb80d9be12e73675ab35a04651e32eda3 (patch) | |
| tree | 050411e5f5e9990179a554bc8d0608762fabfa05 /libcpu | |
| parent | 2bcc47d418a4aed421d9750569a565a954daf045 (diff) | |
[bsp/raspberry-pi] update DM support
- reorganize common Raspberry Pi drivers under the device framework
- add the Raspberry Pi 5 BSP, configuration and documentation
- add BCM2712 and DesignWare AXI DMA controller support
- distinguish BCM2712 DMA32 and DMA40 channels by channel mask
- restore DesignWare AXI DMA enable bits after controller reset
- support a shared AXI maximum burst length across DMA channels
Signed-off-by: GuEe-GUI <[email protected]>
Diffstat (limited to 'libcpu')
| -rw-r--r-- | libcpu/aarch64/common/trap.c | 64 |
1 files changed, 0 insertions, 64 deletions
diff --git a/libcpu/aarch64/common/trap.c b/libcpu/aarch64/common/trap.c index 0ac2dca8ba..fad0b120d9 100644 --- a/libcpu/aarch64/common/trap.c +++ b/libcpu/aarch64/common/trap.c @@ -172,69 +172,6 @@ void rt_hw_show_register(struct rt_hw_exp_stack *regs) #ifndef RT_USING_PIC static void _rt_hw_trap_irq(rt_interrupt_context_t irq_context) { -#ifdef SOC_BCM283x - extern rt_uint8_t core_timer_flag; - void *param; - uint32_t irq; - rt_isr_handler_t isr_func; - extern struct rt_irq_desc isr_table[]; - uint32_t value = 0; - value = IRQ_PEND_BASIC & 0x3ff; - - if(core_timer_flag != 0) - { - uint32_t cpu_id = rt_hw_cpu_id(); - uint32_t int_source = CORE_IRQSOURCE(cpu_id); - if (int_source & 0x0f) - { - if (int_source & 0x08) - { - isr_func = isr_table[IRQ_ARM_TIMER].handler; -#ifdef RT_USING_INTERRUPT_INFO - isr_table[IRQ_ARM_TIMER].counter++; -#endif - if (isr_func) - { - param = isr_table[IRQ_ARM_TIMER].param; - isr_func(IRQ_ARM_TIMER, param); - } - } - } - } - - /* local interrupt*/ - if (value) - { - if (value & (1 << 8)) - { - value = IRQ_PEND1; - irq = __rt_ffs(value) - 1; - } - else if (value & (1 << 9)) - { - value = IRQ_PEND2; - irq = __rt_ffs(value) + 31; - } - else - { - value &= 0x0f; - irq = __rt_ffs(value) + 63; - } - - /* get interrupt service routine */ - isr_func = isr_table[irq].handler; -#ifdef RT_USING_INTERRUPT_INFO - isr_table[irq].counter++; -#endif - if (isr_func) - { - /* Interrupt for myself. */ - param = isr_table[irq].param; - /* turn to interrupt service routine */ - isr_func(irq, param); - } - } -#else void *param; int ir, ir_self; rt_isr_handler_t isr_func; @@ -269,7 +206,6 @@ static void _rt_hw_trap_irq(rt_interrupt_context_t irq_context) /* end of interrupt */ rt_hw_interrupt_ack(ir); -#endif } #else static void _rt_hw_trap_irq(struct rt_interrupt_context *this_ctx) |
