mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-19 13:41:31 +00:00
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
1 changed files with 12 additions and 20 deletions
|
@ -21,32 +21,24 @@ DECLARE_GLOBAL_DATA_PTR;
|
||||||
/* If the firmware passed a device tree use it for U-Boot DRAM setup. */
|
/* If the firmware passed a device tree use it for U-Boot DRAM setup. */
|
||||||
extern u64 rcar_atf_boot_args[];
|
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)
|
int dram_init(void)
|
||||||
{
|
{
|
||||||
const void *atf_fdt_blob = (const void *)(rcar_atf_boot_args[1]);
|
return fdtdec_setup_mem_size_base_fdt(gd->fdt_blob);
|
||||||
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);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int dram_init_banksize(void)
|
int dram_init_banksize(void)
|
||||||
{
|
{
|
||||||
const void *atf_fdt_blob = (const void *)(rcar_atf_boot_args[1]);
|
fdtdec_setup_memory_banksize_fdt(gd->fdt_blob);
|
||||||
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);
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue