1 /* 2 * Copyright (c) 2016 Brian Swetland 3 * 4 * Use of this source code is governed by a MIT-style 5 * license that can be found in the LICENSE file or at 6 * https://opensource.org/licenses/MIT 7 */ 8 9 #include <lk/debug.h> 10 #include <lk/compiler.h> 11 #include <arch/arm/cm.h> 12 ti_cc_dummy_irq(void)13static void ti_cc_dummy_irq(void) { 14 arm_cm_irq_entry(); 15 panic("unhandled irq"); 16 } 17 18 #define DEFAULT_HANDLER(x) \ 19 void ti_cc_##x##_irq(void) __WEAK_ALIAS("ti_cc_dummy_irq") 20 21 #define DEFIRQ(n) DEFAULT_HANDLER(n); 22 #include <platform/defirq.h> 23 #undef DEFIRQ 24 25 #define VECTAB_ENTRY(x) ti_cc_##x##_irq 26 27 const void *const __SECTION(".text.boot.vectab2") vectab2[] = { 28 #define DEFIRQ(n) VECTAB_ENTRY(n), 29 #include <platform/defirq.h> 30 #undef DEFIRQ 31 }; 32