summaryrefslogtreecommitdiffstats
path: root/common/board_r.c
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2014-09-03 17:37:01 -0600
committerSimon Glass <sjg@chromium.org>2014-09-10 12:59:58 -0600
commit9fb02491fe96991cbedc49c7ebe5cdd271d1b6a7 (patch)
treef0368f2f950e20bf6ce3c4a56b49eafcac678d20 /common/board_r.c
parent294b91a5817147d4b7f47be2ac69bac2a1f26491 (diff)
downloadblackbird-obmc-uboot-9fb02491fe96991cbedc49c7ebe5cdd271d1b6a7.tar.gz
blackbird-obmc-uboot-9fb02491fe96991cbedc49c7ebe5cdd271d1b6a7.zip
dm: Make driver model available before board_init()
For some boards board_init() will change GPIOs, so we need to have driver model available before then. Adjust the board init to arrange this, but enable it for driver model only, just to be safe. This does create additional #ifdef logic, but it is safer than trying to make a pervasive change which may cause some boards to break. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'common/board_r.c')
-rw-r--r--common/board_r.c24
1 files changed, 11 insertions, 13 deletions
diff --git a/common/board_r.c b/common/board_r.c
index 64beae5f34..6ac2b7e160 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -715,6 +715,15 @@ init_fnc_t init_sequence_r[] = {
/* TODO: could x86/PPC have this also perhaps? */
#ifdef CONFIG_ARM
initr_caches,
+#endif
+ initr_reloc_global_data,
+ initr_barrier,
+ initr_malloc,
+ bootstage_relocate,
+#ifdef CONFIG_DM
+ initr_dm,
+#endif
+#ifdef CONFIG_ARM
board_init, /* Setup chipselects */
#endif
/*
@@ -726,16 +735,7 @@ init_fnc_t init_sequence_r[] = {
#ifdef CONFIG_CLOCKS
set_cpu_clk_info, /* Setup clock information */
#endif
- initr_reloc_global_data,
- initr_barrier,
- initr_malloc,
- bootstage_relocate,
-#ifdef CONFIG_DM_SERIAL
- stdio_init,
-#endif
-#ifdef CONFIG_DM
- initr_dm,
-#endif
+ stdio_init_tables,
initr_serial,
initr_announce,
INIT_FUNC_WATCHDOG_RESET
@@ -821,9 +821,7 @@ init_fnc_t init_sequence_r[] = {
*/
initr_pci,
#endif
-#ifndef CONFIG_DM_SERIAL
- stdio_init,
-#endif
+ stdio_add_devices,
initr_jumptable,
#ifdef CONFIG_API
initr_api,
OpenPOWER on IntegriCloud