summaryrefslogtreecommitdiffstats
path: root/drivers/core/root.c
diff options
context:
space:
mode:
authorTom Rini <trini@ti.com>2015-01-30 09:24:42 -0500
committerTom Rini <trini@ti.com>2015-01-30 09:24:42 -0500
commit8e3da9dd113699eed2fa05fcde3c55a2ff410913 (patch)
tree4eb27bc3dc9f86e05dcd9f77eca18d0f061ee0a9 /drivers/core/root.c
parent0f274f5376f02ccf30327bf3e5c88d26d3ea8827 (diff)
parent85df958ce267c602a4ec5f1e41f336c5a8d3b441 (diff)
downloadtalos-obmc-uboot-8e3da9dd113699eed2fa05fcde3c55a2ff410913.tar.gz
talos-obmc-uboot-8e3da9dd113699eed2fa05fcde3c55a2ff410913.zip
Merge branch 'master' of git://git.denx.de/u-boot-dm
Diffstat (limited to 'drivers/core/root.c')
-rw-r--r--drivers/core/root.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/core/root.c b/drivers/core/root.c
index 47b3acfbe9..73e3c7228e 100644
--- a/drivers/core/root.c
+++ b/drivers/core/root.c
@@ -9,6 +9,7 @@
#include <common.h>
#include <errno.h>
+#include <fdtdec.h>
#include <malloc.h>
#include <libfdt.h>
#include <dm/device.h>
@@ -49,6 +50,9 @@ int dm_init(void)
ret = device_bind_by_name(NULL, false, &root_info, &DM_ROOT_NON_CONST);
if (ret)
return ret;
+#ifdef CONFIG_OF_CONTROL
+ DM_ROOT_NON_CONST->of_offset = 0;
+#endif
ret = device_probe(DM_ROOT_NON_CONST);
if (ret)
return ret;
@@ -89,6 +93,10 @@ int dm_scan_fdt_node(struct udevice *parent, const void *blob, int offset,
if (pre_reloc_only &&
!fdt_getprop(blob, offset, "u-boot,dm-pre-reloc", NULL))
continue;
+ if (!fdtdec_get_is_enabled(blob, offset)) {
+ dm_dbg(" - ignoring disabled device\n");
+ continue;
+ }
err = lists_bind_fdt(parent, blob, offset, NULL);
if (err && !ret)
ret = err;
OpenPOWER on IntegriCloud