stm32f7: board: Fix memory init
Commit 1473b12ad0
("lib: fdtdec: Update ram_base to store ram start
adddress") brings regression on STM32F7 which can't boot.
Use fdtdec_setup_mem_size_base() to setup memory base and size.
Use fdtdec_setup_memory_banksize() to setup memory bank base and size.
Reported-by: Mark Olsson <mark@markolsson.se>
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
Cc: Mark Olsson <mark@markolsson.se>
Reviewed-by: Vikas Manocha <vikas.manocha@st.com>
This commit is contained in:
parent
673c624cab
commit
8ff21d6d9c
@ -21,25 +21,10 @@
|
|||||||
|
|
||||||
DECLARE_GLOBAL_DATA_PTR;
|
DECLARE_GLOBAL_DATA_PTR;
|
||||||
|
|
||||||
int get_memory_base_size(fdt_addr_t *mr_base, fdt_addr_t *mr_size)
|
|
||||||
{
|
|
||||||
int mr_node;
|
|
||||||
|
|
||||||
mr_node = fdt_path_offset(gd->fdt_blob, "/memory");
|
|
||||||
if (mr_node < 0)
|
|
||||||
return mr_node;
|
|
||||||
*mr_base = fdtdec_get_addr_size_auto_noparent(gd->fdt_blob, mr_node,
|
|
||||||
"reg", 0, mr_size, false);
|
|
||||||
debug("mr_base = %lx, mr_size= %lx\n", *mr_base, *mr_size);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
int dram_init(void)
|
int dram_init(void)
|
||||||
{
|
{
|
||||||
int rv;
|
|
||||||
fdt_addr_t mr_base, mr_size;
|
|
||||||
|
|
||||||
#ifndef CONFIG_SUPPORT_SPL
|
#ifndef CONFIG_SUPPORT_SPL
|
||||||
|
int rv;
|
||||||
struct udevice *dev;
|
struct udevice *dev;
|
||||||
rv = uclass_get_device(UCLASS_RAM, 0, &dev);
|
rv = uclass_get_device(UCLASS_RAM, 0, &dev);
|
||||||
if (rv) {
|
if (rv) {
|
||||||
@ -48,26 +33,12 @@ int dram_init(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
rv = get_memory_base_size(&mr_base, &mr_size);
|
return fdtdec_setup_mem_size_base();
|
||||||
if (rv)
|
|
||||||
return rv;
|
|
||||||
gd->ram_size = mr_size;
|
|
||||||
gd->ram_top = mr_base;
|
|
||||||
|
|
||||||
return rv;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int dram_init_banksize(void)
|
int dram_init_banksize(void)
|
||||||
{
|
{
|
||||||
fdt_addr_t mr_base, mr_size;
|
return fdtdec_setup_memory_banksize();
|
||||||
get_memory_base_size(&mr_base, &mr_size);
|
|
||||||
/*
|
|
||||||
* Fill in global info with description of SRAM configuration
|
|
||||||
*/
|
|
||||||
gd->bd->bi_dram[0].start = mr_base;
|
|
||||||
gd->bd->bi_dram[0].size = mr_size;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int board_early_init_f(void)
|
int board_early_init_f(void)
|
||||||
|
Loading…
Reference in New Issue
Block a user