summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2014-11-10 17:16:46 -0700
committerSimon Glass <sjg@chromium.org>2014-11-21 08:12:55 +0100
commit1151651831ff11b3f40d132bb9ab012e95a8faa1 (patch)
treed447f9186345abffb1c3b42fd179cfc9d5c16ee5
parentfb4f5e7c911745de1a6c7d0051abca9d2a4cd920 (diff)
dm: spl: Allow driver model to be used
When enabled, set up driver model for SPL. This allows SPL to use the same drivers as the main U-Boot. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Tom Rini <trini@ti.com>
-rw-r--r--common/spl/spl.c5
-rw-r--r--scripts/Makefile.spl1
2 files changed, 6 insertions, 0 deletions
diff --git a/common/spl/spl.c b/common/spl/spl.c
index 6b90ad8841..3cd19f0e18 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -7,6 +7,7 @@
* SPDX-License-Identifier: GPL-2.0+
*/
#include <common.h>
+#include <dm.h>
#include <spl.h>
#include <asm/u-boot.h>
#include <nand.h>
@@ -15,6 +16,7 @@
#include <i2c.h>
#include <image.h>
#include <malloc.h>
+#include <dm/root.h>
#include <linux/compiler.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -147,6 +149,9 @@ void board_init_r(gd_t *dummy1, ulong dummy2)
gd->malloc_limit = gd->malloc_base + CONFIG_SYS_MALLOC_F_LEN;
gd->malloc_ptr = 0;
#endif
+#ifdef CONFIG_SPL_DM
+ dm_init_and_scan(true);
+#endif
#ifndef CONFIG_PPC
/*
diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
index 07db0bff8d..6e13f68d99 100644
--- a/scripts/Makefile.spl
+++ b/scripts/Makefile.spl
@@ -69,6 +69,7 @@ libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/
libs-$(CONFIG_SPL_FRAMEWORK) += common/spl/
libs-$(CONFIG_SPL_LIBCOMMON_SUPPORT) += common/
libs-$(CONFIG_SPL_LIBDISK_SUPPORT) += disk/
+libs-$(CONFIG_SPL_DM) += drivers/core/
libs-$(CONFIG_SPL_I2C_SUPPORT) += drivers/i2c/
libs-$(CONFIG_SPL_GPIO_SUPPORT) += drivers/gpio/
libs-$(CONFIG_SPL_MMC_SUPPORT) += drivers/mmc/