First pass update BLE stack

This commit is contained in:
Ben V. Brown
2024-06-04 22:22:33 +10:00
parent 23be84910c
commit 3e34d8b0ee
100 changed files with 29053 additions and 25048 deletions

View File

@@ -0,0 +1,29 @@
#include "bl_irq.h"
extern pFunc __Interrupt_Handlers[IRQn_LAST];
void bl_irq_enable(unsigned int source) { *(volatile uint8_t *)(CLIC_HART0_ADDR + CLIC_INTIE + source) = 1; }
void bl_irq_disable(unsigned int source) { *(volatile uint8_t *)(CLIC_HART0_ADDR + CLIC_INTIE + source) = 0; }
void bl_irq_pending_set(unsigned int source) { *(volatile uint8_t *)(CLIC_HART0_ADDR + CLIC_INTIP + source) = 1; }
void bl_irq_pending_clear(unsigned int source) { *(volatile uint8_t *)(CLIC_HART0_ADDR + CLIC_INTIP + source) = 0; }
void bl_irq_register(int irqnum, void *handler) {
if (irqnum < IRQn_LAST) {
__Interrupt_Handlers[irqnum] = handler;
}
}
void bl_irq_unregister(int irqnum, void *handler) {
if (irqnum < IRQn_LAST) {
__Interrupt_Handlers[irqnum] = NULL;
}
}
void bl_irq_handler_get(int irqnum, void **handler) {
if (irqnum < IRQn_LAST) {
*handler = __Interrupt_Handlers[irqnum];
}
}