projects
/
bertos.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix the i2c implemtation for lm3s. Add some defines to use also the second i2c device.
[bertos.git]
/
bertos
/
cpu
/
cortex-m3
/
drv
/
irq_cm3.c
diff --git
a/bertos/cpu/cortex-m3/drv/irq_cm3.c
b/bertos/cpu/cortex-m3/drv/irq_cm3.c
index a21439a7a74e28df402a60e0b66b8cb4711fd434..bbae832428fdd870274040234448f471eb7b2667 100644
(file)
--- a/
bertos/cpu/cortex-m3/drv/irq_cm3.c
+++ b/
bertos/cpu/cortex-m3/drv/irq_cm3.c
@@
-35,10
+35,11
@@
* \author Andrea Righi <arighi@develer.com>
*/
* \author Andrea Righi <arighi@develer.com>
*/
+#include "irq_cm3.h"
+
#include <cfg/debug.h> /* ASSERT() */
#include <cfg/log.h> /* LOG_ERR() */
#include <cpu/irq.h>
#include <cfg/debug.h> /* ASSERT() */
#include <cfg/log.h> /* LOG_ERR() */
#include <cpu/irq.h>
-#include "irq_cm3.h"
static void (*irq_table[NUM_INTERRUPTS])(void)
__attribute__((section("vtable")));
static void (*irq_table[NUM_INTERRUPTS])(void)
__attribute__((section("vtable")));
@@
-83,9
+84,9
@@
static void sysirq_enable(sysirq_t irq)
{
/* Enable the IRQ line (only for generic IRQs) */
if (irq >= 16 && irq < 48)
{
/* Enable the IRQ line (only for generic IRQs) */
if (irq >= 16 && irq < 48)
-
HWREG(NVIC_EN0)
= 1 << (irq - 16);
+
NVIC_EN0_R
= 1 << (irq - 16);
else if (irq >= 48)
else if (irq >= 48)
-
HWREG(NVIC_EN1)
= 1 << (irq - 48);
+
NVIC_EN1_R
= 1 << (irq - 48);
}
void sysirq_setHandler(sysirq_t irq, sysirq_handler_t handler)
}
void sysirq_setHandler(sysirq_t irq, sysirq_handler_t handler)
@@
-122,6
+123,6
@@
void sysirq_init(void)
irq_table[i] = unhandled_isr;
/* Update NVIC to point to the new vector table */
irq_table[i] = unhandled_isr;
/* Update NVIC to point to the new vector table */
-
HWREG(NVIC_VTABLE)
= (size_t)irq_table;
+
NVIC_VTABLE_R
= (size_t)irq_table;
IRQ_RESTORE(flags);
}
IRQ_RESTORE(flags);
}