1 #include "bl808.h" 2 SystemInit(void)3void SystemInit(void) 4 { 5 uint32_t i = 0; 6 7 /* get interrupt level from info */ 8 CLIC->CLICCFG = (((CLIC->CLICINFO & CLIC_INFO_CLICINTCTLBITS_Msk) >> CLIC_INFO_CLICINTCTLBITS_Pos) << CLIC_CLICCFG_NLBIT_Pos); 9 10 /* Every interrupt should be clear by software*/ 11 for (i = 0; i < IRQn_LAST; i++) { 12 CLIC->CLICINT[i].IE = 0; 13 CLIC->CLICINT[i].IP = 0; 14 CLIC->CLICINT[i].ATTR = 1; /* use vector interrupt */ 15 } 16 17 CLIC->CLICINT[MSOFT_IRQn].ATTR = 0x3; 18 } 19 System_Post_Init(void)20void System_Post_Init(void) 21 { 22 /* global IRQ enable */ 23 __enable_irq(); 24 }