ARM: rmobile: Merge prior-stage firmware DT fragment into U-Boot DT on Gen3
The prior-stage firmware generates DT fragment containing the /firmware node, /reserved-memory node and /memory@ nodes. Merge these nodes into the U-Boot DT, so U-Boot can use this information. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> Cc: Simon Glass <sjg@chromium.org> Cc: Tom Rini <trini@konsulko.com>
This commit is contained in:
		
							parent
							
								
									5d17a1691b
								
							
						
					
					
						commit
						361377dbdb
					
				|  | @ -21,32 +21,24 @@ DECLARE_GLOBAL_DATA_PTR; | |||
| /* If the firmware passed a device tree use it for U-Boot DRAM setup. */ | ||||
| extern u64 rcar_atf_boot_args[]; | ||||
| 
 | ||||
| int fdtdec_board_setup(const void *fdt_blob) | ||||
| { | ||||
| 	void *atf_fdt_blob = (void *)(rcar_atf_boot_args[1]); | ||||
| 
 | ||||
| 	if (fdt_magic(atf_fdt_blob) == FDT_MAGIC) | ||||
| 		fdt_overlay_apply_node((void *)fdt_blob, 0, atf_fdt_blob, 0); | ||||
| 
 | ||||
| 	return 0; | ||||
| } | ||||
| 
 | ||||
| int dram_init(void) | ||||
| { | ||||
| 	const void *atf_fdt_blob = (const void *)(rcar_atf_boot_args[1]); | ||||
| 	const void *blob; | ||||
| 
 | ||||
| 	/* Check if ATF passed us DTB. If not, fall back to builtin DTB. */ | ||||
| 	if (fdt_magic(atf_fdt_blob) == FDT_MAGIC) | ||||
| 		blob = atf_fdt_blob; | ||||
| 	else | ||||
| 		blob = gd->fdt_blob; | ||||
| 
 | ||||
| 	return fdtdec_setup_mem_size_base_fdt(blob); | ||||
| 	return fdtdec_setup_mem_size_base_fdt(gd->fdt_blob); | ||||
| } | ||||
| 
 | ||||
| int dram_init_banksize(void) | ||||
| { | ||||
| 	const void *atf_fdt_blob = (const void *)(rcar_atf_boot_args[1]); | ||||
| 	const void *blob; | ||||
| 
 | ||||
| 	/* Check if ATF passed us DTB. If not, fall back to builtin DTB. */ | ||||
| 	if (fdt_magic(atf_fdt_blob) == FDT_MAGIC) | ||||
| 		blob = atf_fdt_blob; | ||||
| 	else | ||||
| 		blob = gd->fdt_blob; | ||||
| 
 | ||||
| 	fdtdec_setup_memory_banksize_fdt(blob); | ||||
| 	fdtdec_setup_memory_banksize_fdt(gd->fdt_blob); | ||||
| 
 | ||||
| 	return 0; | ||||
| } | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue