diff options
author | Simon Glass <sjg@chromium.org> | 2015-01-25 08:26:58 -0700 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2015-01-29 17:09:54 -0700 |
commit | 2f3b95dbc78ce96b0f9f471e688db66223988419 (patch) | |
tree | ebd398714c12cda56eac400fd7bb67b3dbde77d3 | |
parent | 040b69af7209d8fe0742352f4a72719df8dda9a5 (diff) | |
download | u-boot-imx-2f3b95dbc78ce96b0f9f471e688db66223988419.zip u-boot-imx-2f3b95dbc78ce96b0f9f471e688db66223988419.tar.gz u-boot-imx-2f3b95dbc78ce96b0f9f471e688db66223988419.tar.bz2 |
dm: core: Set device tree node for root device
The root device corresponds to the root device tree node, so set this up.
Also add a few notes to the documentation.
Signed-off-by: Simon Glass <sjg@chromium.org>
-rw-r--r-- | doc/driver-model/README.txt | 4 | ||||
-rw-r--r-- | drivers/core/root.c | 3 |
2 files changed, 7 insertions, 0 deletions
diff --git a/doc/driver-model/README.txt b/doc/driver-model/README.txt index eafa825..4041569 100644 --- a/doc/driver-model/README.txt +++ b/doc/driver-model/README.txt @@ -363,6 +363,10 @@ can leave out platdata_auto_alloc_size. In this case you can use malloc in your ofdata_to_platdata (or probe) method to allocate the required memory, and you should free it in the remove method. +The driver model tree is intended to mirror that of the device tree. The +root driver is at device tree offset 0 (the root node, '/'), and its +children are the children of the root node. + Declaring Uclasses ------------------ diff --git a/drivers/core/root.c b/drivers/core/root.c index 47b3acf..a5b0a61 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, 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; |