of: platform: populate /firmware/ node from of_platform_default_populate_init()
Since "/firmware" does not have its own "compatible" property as it's just collection of nodes representing firmware interface, it's sub-nodes are not populated during system initialization. Currently different firmware drivers search the /firmware/ node and populate the sub-node devices selectively. Instead we can populate the /firmware/ node during init to avoid more drivers continuing to populate the devices selectively. To generalize the solution this patch populates the /firmware/ node explicitly from of_platform_default_populate_init(). Cc: Arnd Bergmann <arnd@arndb.de> Cc: Rob Herring <robh@kernel.org> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com> Acked-by: Rob Herring <robh@kernel.org> Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org> Tested-by: Bjorn Andersson <bjorn.andersson@linaro.org> Signed-off-by: Andy Gross <andy.gross@linaro.org>
This commit is contained in:
		
							parent
							
								
									c01fc2275e
								
							
						
					
					
						commit
						3aa0582fdb
					
				| @ -518,6 +518,10 @@ static int __init of_platform_default_populate_init(void) | ||||
| 	for_each_matching_node(node, reserved_mem_matches) | ||||
| 		of_platform_device_create(node, NULL, NULL); | ||||
| 
 | ||||
| 	node = of_find_node_by_path("/firmware"); | ||||
| 	if (node) | ||||
| 		of_platform_populate(node, NULL, NULL, NULL); | ||||
| 
 | ||||
| 	/* Populate everything else. */ | ||||
| 	of_platform_default_populate(NULL, NULL, NULL); | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user