projects
/
bertos.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
CM3: startup refactoring.
[bertos.git]
/
bertos
/
cpu
/
cortex-m3
/
drv
/
irq_lm3s.c
diff --git
a/bertos/cpu/cortex-m3/drv/irq_lm3s.c
b/bertos/cpu/cortex-m3/drv/irq_lm3s.c
index c1df50193b9fd34e958b65a957204ec4f2df4e96..2ff83575fd699c2f8fb31e81e34149e8c297cb7a 100644
(file)
--- a/
bertos/cpu/cortex-m3/drv/irq_lm3s.c
+++ b/
bertos/cpu/cortex-m3/drv/irq_lm3s.c
@@
-35,7
+35,8
@@
* \author Andrea Righi <arighi@develer.com>
*/
* \author Andrea Righi <arighi@develer.com>
*/
-#include <cfg/debug.h>
+#include <cfg/debug.h> /* ASSERT() */
+#include <cfg/log.h> /* LOG_ERR() */
#include <cpu/irq.h>
#include "io/lm3s.h"
#include "irq_lm3s.h"
#include <cpu/irq.h>
#include "io/lm3s.h"
#include "irq_lm3s.h"
@@
-43,9
+44,15
@@
static void (*irq_table[NUM_INTERRUPTS])(void)
__attribute__((section("vtable")));
static void (*irq_table[NUM_INTERRUPTS])(void)
__attribute__((section("vtable")));
-static void unhandled_isr(void)
+/* Unhandled IRQ */
+static NORETURN NAKED void unhandled_isr(void)
{
{
- /* Unhandled IRQ */
+ reg32_t reg;
+
+ asm volatile ("mrs %0, ipsr" : "=r"(reg));
+ LOG_ERR("unhandled IRQ %lu\n", reg);
+ PAUSE;
+ UNREACHABLE();
ASSERT(0);
}
ASSERT(0);
}