[rtems commit] bsp/mpc55xx: Add bsp_restart()

Sebastian Huber sebh at rtems.org
Wed Jul 18 07:44:02 UTC 2012


Module:    rtems
Branch:    master
Commit:    c838ca2dfad5a19fd500af4e3d41570be14f2d71
Changeset: http://git.rtems.org/rtems/commit/?id=c838ca2dfad5a19fd500af4e3d41570be14f2d71

Author:    Christian Mauderer <christian.mauderer at embedded-brains.de>
Date:      Thu Mar 29 10:58:10 2012 +0200

bsp/mpc55xx: Add bsp_restart()

---

 c/src/lib/libbsp/powerpc/mpc55xxevb/Makefile.am    |    1 +
 c/src/lib/libbsp/powerpc/mpc55xxevb/include/bsp.h  |    4 ++-
 .../libbsp/powerpc/mpc55xxevb/startup/restart.c    |   24 ++++++++++++++++++++
 3 files changed, 28 insertions(+), 1 deletions(-)

diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/Makefile.am b/c/src/lib/libbsp/powerpc/mpc55xxevb/Makefile.am
index 606e9b7..1a9259e 100644
--- a/c/src/lib/libbsp/powerpc/mpc55xxevb/Makefile.am
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/Makefile.am
@@ -72,6 +72,7 @@ libbsp_a_SOURCES += startup/bspstart.c
 libbsp_a_SOURCES += startup/exc-vector-base.S
 libbsp_a_SOURCES += startup/get-system-clock.c
 libbsp_a_SOURCES += startup/reset.c
+libbsp_a_SOURCES += startup/restart.c
 libbsp_a_SOURCES += startup/start-config-clock.c
 libbsp_a_SOURCES += startup/start-config-ebi-cs.c
 libbsp_a_SOURCES += startup/start-config-ebi-cs-cal.c
diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/include/bsp.h b/c/src/lib/libbsp/powerpc/mpc55xxevb/include/bsp.h
index 0a55cb2..b486820 100644
--- a/c/src/lib/libbsp/powerpc/mpc55xxevb/include/bsp.h
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/include/bsp.h
@@ -7,7 +7,7 @@
  */
 
 /*
- * Copyright (c) 2008-2011 embedded brains GmbH.  All rights reserved.
+ * Copyright (c) 2008-2012 embedded brains GmbH.  All rights reserved.
  *
  *  embedded brains GmbH
  *  Obere Lagerstr. 30
@@ -72,6 +72,8 @@ int smsc9218i_attach_detach(
 
 rtems_status_code bsp_register_i2c(void);
 
+void bsp_restart(void *addr);
+
 #endif /* ASM */
 
 #ifdef __cplusplus
diff --git a/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/restart.c b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/restart.c
new file mode 100644
index 0000000..c095478
--- /dev/null
+++ b/c/src/lib/libbsp/powerpc/mpc55xxevb/startup/restart.c
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) 2008-2012 embedded brains GmbH.  All rights reserved.
+ *
+ *  embedded brains GmbH
+ *  Obere Lagerstr. 30
+ *  82178 Puchheim
+ *  Germany
+ *  <rtems at embedded-brains.de>
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ */
+
+#include <bsp.h>
+
+void bsp_restart(void *addr)
+{
+  rtems_interrupt_level level;
+  void (*start)(void) = addr;
+
+  rtems_interrupt_disable(level);
+  (*start)();
+}




More information about the vc mailing list