of_chosen and of_model can be set once we have the device tree root node, no need to wait until we probe the tree. Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> --- drivers/of/base.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/drivers/of/base.c b/drivers/of/base.c index 723b1fae47..83c9d5fb6b 100644 --- a/drivers/of/base.c +++ b/drivers/of/base.c @@ -1682,6 +1682,9 @@ int of_modalias_node(struct device_node *node, char *modalias, int len) } EXPORT_SYMBOL_GPL(of_modalias_node); +static struct device_node *of_chosen; +static const char *of_model; + struct device_node *of_get_root_node(void) { return root_node; @@ -1694,6 +1697,12 @@ int of_set_root_node(struct device_node *node) root_node = node; + of_chosen = of_find_node_by_path("/chosen"); + of_property_read_string(root_node, "model", &of_model); + + if (of_model) + barebox_set_model(of_model); + of_alias_scan(); return 0; @@ -2277,9 +2286,6 @@ int of_add_memory(struct device_node *node, bool dump) return ret; } -static struct device_node *of_chosen; -static const char *of_model; - const char *of_get_model(void) { return of_model; @@ -2344,12 +2350,6 @@ int of_probe(void) if(!root_node) return -ENODEV; - of_chosen = of_find_node_by_path("/chosen"); - of_property_read_string(root_node, "model", &of_model); - - if (of_model) - barebox_set_model(of_model); - firmware = of_find_node_by_path("/firmware"); if (firmware) of_platform_populate(firmware, NULL, NULL); -- 2.29.2 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox