pr_debug("%s()\n", __func__);
pr_debug(" starting at: %pOF\n", root);
- device_links_supplier_sync_state_pause();
for_each_child_of_node(root, child) {
rc = of_platform_bus_create(child, matches, lookup, parent, true);
if (rc) {
break;
}
}
- device_links_supplier_sync_state_resume();
-
of_node_set_flag(root, OF_POPULATED_BUS);
of_node_put(root);
return -ENODEV;
platform_bus_type.add_links = of_link_to_suppliers;
- device_links_supplier_sync_state_pause();
/*
* Handle certain compatibles explicitly, since we don't want to create
* platform_devices for every node in /reserved-memory with a
return 0;
}
arch_initcall_sync(of_platform_default_populate_init);
-
-static int __init of_platform_sync_state_init(void)
-{
- device_links_supplier_sync_state_resume();
- return 0;
-}
-late_initcall_sync(of_platform_sync_state_init);
#endif
int of_platform_device_destroy(struct device *dev, void *data)