summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2014-07-23 06:55:00 -0600
committerSimon Glass <sjg@chromium.org>2014-07-23 14:07:24 +0100
commit7497812d47d4ad17172ec373469a33a6ab8b257e (patch)
tree8275d58ac9dcc129fdba9371be522b999c11e305
parent709ea543b92489e7729d2d7ddd6c9f451e52158c (diff)
downloadu-boot-imx-7497812d47d4ad17172ec373469a33a6ab8b257e.zip
u-boot-imx-7497812d47d4ad17172ec373469a33a6ab8b257e.tar.gz
u-boot-imx-7497812d47d4ad17172ec373469a33a6ab8b257e.tar.bz2
dm: Make sure that the root device is probed
The root device should be probed just like any other device. The effect of this is to mark the device as activated, so that it can be removed (along with its children) if required. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Marek Vasut <marex@denx.de>
-rw-r--r--drivers/core/root.c3
-rw-r--r--test/dm/core.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/drivers/core/root.c b/drivers/core/root.c
index 11e0879..ac1c164 100644
--- a/drivers/core/root.c
+++ b/drivers/core/root.c
@@ -49,6 +49,9 @@ int dm_init(void)
ret = device_bind_by_name(NULL, &root_info, &DM_ROOT_NON_CONST);
if (ret)
return ret;
+ ret = device_probe(DM_ROOT_NON_CONST);
+ if (ret)
+ return ret;
return 0;
}
diff --git a/test/dm/core.c b/test/dm/core.c
index be3646b..8c18780 100644
--- a/test/dm/core.c
+++ b/test/dm/core.c
@@ -106,7 +106,7 @@ static int dm_test_autoprobe(struct dm_test_state *dms)
ut_asserteq(0, dm_testdrv_op_count[DM_TEST_OP_POST_PROBE]);
/* The root device should not be activated until needed */
- ut_assert(!(dms->root->flags & DM_FLAG_ACTIVATED));
+ ut_assert(dms->root->flags & DM_FLAG_ACTIVATED);
/*
* We should be able to find the three test devices, and they should