diff --git a/components/drivers/core/platform_ofw.c b/components/drivers/core/platform_ofw.c index dbe091935e9..38065dd3eb5 100644 --- a/components/drivers/core/platform_ofw.c +++ b/components/drivers/core/platform_ofw.c @@ -267,6 +267,12 @@ static int platform_ofw_device_probe(void) if (ofw_node_root) { + if ((node = rt_ofw_find_node_by_path("/clocks"))) + { + platform_ofw_device_probe_once(node); + rt_ofw_node_put(node); + } + rt_ofw_node_get(ofw_node_root); err = platform_ofw_device_probe_once(ofw_node_root); @@ -279,12 +285,6 @@ static int platform_ofw_device_probe(void) rt_ofw_node_put(node); } - if ((node = rt_ofw_find_node_by_path("/clocks"))) - { - platform_ofw_device_probe_once(node); - rt_ofw_node_put(node); - } - rt_ofw_node_get(ofw_node_chosen); if ((node = rt_ofw_get_child_by_compatible(ofw_node_chosen, "simple-framebuffer"))) {