diff options
Diffstat (limited to 'c/src/lib/libbsp/arm/lpc24xx/startup/bspreset.c')
-rw-r--r-- | c/src/lib/libbsp/arm/lpc24xx/startup/bspreset.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/c/src/lib/libbsp/arm/lpc24xx/startup/bspreset.c b/c/src/lib/libbsp/arm/lpc24xx/startup/bspreset.c index f38ce1a46c..601ad69b13 100644 --- a/c/src/lib/libbsp/arm/lpc24xx/startup/bspreset.c +++ b/c/src/lib/libbsp/arm/lpc24xx/startup/bspreset.c @@ -22,19 +22,22 @@ #include <bsp/bootcard.h> #include <bsp/lpc24xx.h> +#include <bsp/start.h> -void bsp_reset(void) +BSP_START_TEXT_SECTION __attribute__((flatten)) void bsp_reset(void) { rtems_interrupt_level level; rtems_interrupt_disable(level); - /* Trigger watchdog reset */ - WDCLKSEL = 0; - WDTC = 0xff; - WDMOD = 0x3; - WDFEED = 0xaa; - WDFEED = 0x55; + #ifdef ARM_MULTILIB_ARCH_V4 + /* Trigger watchdog reset */ + WDCLKSEL = 0; + WDTC = 0xff; + WDMOD = 0x3; + WDFEED = 0xaa; + WDFEED = 0x55; + #endif while (true) { /* Do nothing */ |