mips: octeon: bootoctlinux: Use gd->ram_size instead of ram_get_info()
Using ram_get_info() is complicated and does not work after relocation. Now that gd->ram_size holds the full RAM size, let's use it instead and remove the ram_get_size logic completely. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Aaron Williams <awilliams@marvell.com> Cc: Chandrakala Chavva <cchavva@marvell.com> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
This commit is contained in:
parent
8bab2c893c
commit
b7eac19a3d
@ -9,7 +9,6 @@
|
||||
#include <dm.h>
|
||||
#include <elf.h>
|
||||
#include <env.h>
|
||||
#include <ram.h>
|
||||
|
||||
#include <asm/io.h>
|
||||
#include <linux/compat.h>
|
||||
@ -370,8 +369,6 @@ int do_bootoctlinux(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
struct cvmx_coremask avail_coremask;
|
||||
int first_core;
|
||||
int core;
|
||||
struct ram_info ram;
|
||||
struct udevice *dev;
|
||||
const u64 *nmi_code;
|
||||
int num_dwords;
|
||||
u8 node_mask = 0x01;
|
||||
@ -470,19 +467,6 @@ int do_bootoctlinux(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
*/
|
||||
cvmx_coremask_or(&coremask_to_run, &coremask_to_run, &core_mask);
|
||||
|
||||
/* Get RAM size */
|
||||
ret = uclass_get_device(UCLASS_RAM, 0, &dev);
|
||||
if (ret) {
|
||||
debug("DRAM init failed: %d\n", ret);
|
||||
return ret;
|
||||
}
|
||||
|
||||
ret = ram_get_info(dev, &ram);
|
||||
if (ret) {
|
||||
debug("Cannot get DRAM size: %d\n", ret);
|
||||
return ret;
|
||||
}
|
||||
|
||||
/*
|
||||
* Load kernel ELF image, or try binary if ELF is not detected.
|
||||
* This way the much smaller vmlinux.bin can also be started but
|
||||
@ -498,7 +482,7 @@ int do_bootoctlinux(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
|
||||
/* Init bootmem list for Linux kernel booting */
|
||||
if (!cvmx_bootmem_phy_mem_list_init(
|
||||
ram.size, OCTEON_RESERVED_LOW_MEM_SIZE,
|
||||
gd->ram_size, OCTEON_RESERVED_LOW_MEM_SIZE,
|
||||
(void *)CKSEG0ADDR(BOOTLOADER_BOOTMEM_DESC_SPACE))) {
|
||||
printf("FATAL: Error initializing free memory list\n");
|
||||
return 0;
|
||||
@ -517,7 +501,8 @@ int do_bootoctlinux(struct cmd_tbl *cmdtp, int flag, int argc,
|
||||
if (core == first_core)
|
||||
cvmx_bootinfo_array[core].flags |= BOOT_FLAG_INIT_CORE;
|
||||
|
||||
cvmx_bootinfo_array[core].dram_size = ram.size / (1024 * 1024);
|
||||
cvmx_bootinfo_array[core].dram_size = gd->ram_size /
|
||||
(1024 * 1024);
|
||||
|
||||
cvmx_bootinfo_array[core].dclock_hz = gd->mem_clk * 1000000;
|
||||
cvmx_bootinfo_array[core].eclock_hz = gd->cpu_clk;
|
||||
|
Loading…
Reference in New Issue
Block a user