summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c')
-rw-r--r--c/src/lib/libbsp/m68k/genmcf548x/startup/init548x.c10
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)