[U-Boot] [PATCH] vxworks: Add CONFIG_VXWORKS_PREBOOT
Niklaus Giger
niklaus.giger at netstal.com
Wed Sep 23 08:22:38 CEST 2009
The option CONFIG_VXWORKS_PREBOOT allows a board specific
vxworks_preboot to be run just before jumping into the
vxWorks images. This can be used to alter a register
which is used differently by U-boot and vxWorks.
Signed-off-by: Niklaus Giger <niklaus.giger at netstal.com>
---
common/cmd_elf.c | 4 ++++
include/vxworks.h | 4 ++++
2 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/common/cmd_elf.c b/common/cmd_elf.c
index bf7dd63..4e36680 100644
--- a/common/cmd_elf.c
+++ b/common/cmd_elf.c
@@ -213,6 +213,10 @@ int do_bootvx (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
(char *) bootaddr);
printf ("## Starting vxWorks at 0x%08lx ...\n", addr);
+#ifdef CONFIG_VXWORKS_PREBOOT
+ vxworks_preboot();
+#endif
+
((void (*)(void)) addr) ();
puts ("## vxWorks terminated\n");
diff --git a/include/vxworks.h b/include/vxworks.h
index 1633904..df2b580 100644
--- a/include/vxworks.h
+++ b/include/vxworks.h
@@ -50,4 +50,8 @@ int do_bootvx(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]);
#define CONFIG_SYS_VXWORKS_SERVERNAME "srv"
#endif
+#ifdef CONFIG_VXWORKS_PREBOOT
+ void vxworks_preboot(void);
+#endif
+
#endif
--
1.6.3.3
More information about the U-Boot
mailing list