diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-12-05 17:26:41 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-12-16 15:15:42 +0100 |
commit | 8d2920119b6e14691fc978d8fccd7b0900dcb23f (patch) | |
tree | 342931096319ddd2c7bd23b0a0cdb9d8fdbbc3a9 /c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c | |
parent | bsp/genmcf548x: Add interrupt extension support (diff) | |
download | rtems-8d2920119b6e14691fc978d8fccd7b0900dcb23f.tar.bz2 |
bsp/genmcf548x: Add initial values for INTC_ICRn
According to the manual the application must use unique and
non-overlapping level and priority definitions for enabled interrupts.
Diffstat (limited to '')
-rw-r--r-- | c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c b/c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c index 3a9d002cf3..1221df4041 100644 --- a/c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c +++ b/c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c @@ -77,7 +77,9 @@ void mcf548x_init(void); void mcf548x_init(void) - { +{ + size_t i; + #if defined(HAS_LOW_LEVEL_INIT) /* set XLB arbiter timeouts */ MCF548X_XLB_ADRTO = 0x00000100; @@ -108,6 +110,12 @@ void mcf548x_init(void) /* Zero uninitialized data */ memset(bsp_section_bss_begin, 0, (size_t) bsp_section_bss_size); + + for (i = 8; i < RTEMS_ARRAY_SIZE(mcf548x_intc_icr_init_values); ++i) { + volatile uint8_t *icr = &MCF548X_INTC_ICR0; + + icr[i] = mcf548x_intc_icr_init_values[i]; + } } /********************************************************************/ #if defined(HAS_LOW_LEVEL_INIT) |