summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/arm/lpc32xx/misc/restart.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2011-03-28 09:00:01 +0000
committerSebastian Huber <sebastian.huber@embedded-brains.de>2011-03-28 09:00:01 +0000
commitf4371073f279beafdee65329ae910e4b87469cf3 (patch)
tree5bc9f1bc8e3e4016f7413ec51069ad27d4e6b055 /c/src/lib/libbsp/arm/lpc32xx/misc/restart.c
parent2011-03-29 Sebastian Huber <sebastian.huber@embedded-brains.de> (diff)
downloadrtems-f4371073f279beafdee65329ae910e4b87469cf3.tar.bz2
2011-03-29 Sebastian Huber <sebastian.huber@embedded-brains.de>
* configure.ac, include/bspopts.h.in: New BSP option LPC32XX_SCRATCH_AREA_SIZE. Disable BSP option LPC32XX_DISABLE_READ_ONLY_PROTECTION for all BSPs. * include/boot.h: Removed application specific defines. * include/nand-mlc.h, misc/nand-mlc.c: Changed configuration layout. * include/mmu.h, misc/mmu.c: Documentation. Bugfix. * include/bsp.h, startup/bspstarthooks.c, misc/restart.c, startup/linkcmds.lpc32xx_mzx, startup/linkcmds.lpc32xx_mzx_stage_1, startup/linkcmds.lpc32xx_mzx_stage_2, startup/linkcmds.lpc32xx_phycore: Support for scratch area. Moved code into macros for reusability.
Diffstat (limited to '')
-rw-r--r--c/src/lib/libbsp/arm/lpc32xx/misc/restart.c21
1 files changed, 1 insertions, 20 deletions
diff --git a/c/src/lib/libbsp/arm/lpc32xx/misc/restart.c b/c/src/lib/libbsp/arm/lpc32xx/misc/restart.c
index 68bf2c3ba2..2abacf0e38 100644
--- a/c/src/lib/libbsp/arm/lpc32xx/misc/restart.c
+++ b/c/src/lib/libbsp/arm/lpc32xx/misc/restart.c
@@ -30,24 +30,5 @@
void bsp_restart(void *addr)
{
- ARM_SWITCH_REGISTERS;
- rtems_interrupt_level level;
- uint32_t ctrl = 0;
-
- rtems_interrupt_disable(level);
-
- arm_cp15_data_cache_test_and_clean();
- arm_cp15_instruction_cache_invalidate();
-
- ctrl = arm_cp15_get_control();
- ctrl &= ~(ARM_CP15_CTRL_I | ARM_CP15_CTRL_C | ARM_CP15_CTRL_M);
- arm_cp15_set_control(ctrl);
-
- __asm__ volatile (
- ARM_SWITCH_TO_ARM
- "mov pc, %[addr]\n"
- ARM_SWITCH_BACK
- : ARM_SWITCH_OUTPUT
- : [addr] "r" (addr)
- );
+ LPC32XX_DO_RESTART(addr);
}