diff options
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/cpu/coreboot/sdram.c | 9 | ||||
-rw-r--r-- | arch/x86/include/asm/init_helpers.h | 2 | ||||
-rw-r--r-- | arch/x86/lib/init_helpers.c | 51 |
3 files changed, 2 insertions, 60 deletions
diff --git a/arch/x86/cpu/coreboot/sdram.c b/arch/x86/cpu/coreboot/sdram.c index 2722886..ae5c893 100644 --- a/arch/x86/cpu/coreboot/sdram.c +++ b/arch/x86/cpu/coreboot/sdram.c @@ -7,14 +7,7 @@ */ #include <common.h> -#include <malloc.h> #include <asm/e820.h> -#include <asm/u-boot-x86.h> -#include <asm/global_data.h> -#include <asm/init_helpers.h> -#include <asm/processor.h> -#include <asm/sections.h> -#include <asm/zimage.h> #include <asm/arch/sysinfo.h> #include <asm/arch/tables.h> @@ -109,7 +102,7 @@ int dram_init(void) if (ram_size == 0) return -1; - return calculate_relocation_address(); + return 0; } void dram_init_banksize(void) diff --git a/arch/x86/include/asm/init_helpers.h b/arch/x86/include/asm/init_helpers.h index 8cbe08e..c689a63 100644 --- a/arch/x86/include/asm/init_helpers.h +++ b/arch/x86/include/asm/init_helpers.h @@ -8,8 +8,6 @@ #ifndef _INIT_HELPERS_H_ #define _INIT_HELPERS_H_ -int calculate_relocation_address(void); - int init_cache_f_r(void); int init_bd_struct_r(void); int init_func_spi(void); diff --git a/arch/x86/lib/init_helpers.c b/arch/x86/lib/init_helpers.c index 4fd47fc..82fd5c3 100644 --- a/arch/x86/lib/init_helpers.c +++ b/arch/x86/lib/init_helpers.c @@ -4,12 +4,10 @@ * * SPDX-License-Identifier: GPL-2.0+ */ + #include <common.h> -#include <fdtdec.h> -#include <spi.h> #include <asm/errno.h> #include <asm/mtrr.h> -#include <asm/sections.h> DECLARE_GLOBAL_DATA_PTR; @@ -19,53 +17,6 @@ __weak ulong board_get_usable_ram_top(ulong total_size) return gd->ram_size; } -int calculate_relocation_address(void) -{ - const ulong uboot_size = (uintptr_t)&__bss_end - - (uintptr_t)&__text_start; - ulong total_size; - ulong dest_addr; - ulong fdt_size = 0; - -#if defined(CONFIG_OF_SEPARATE) && defined(CONFIG_OF_CONTROL) - if (gd->fdt_blob) - fdt_size = ALIGN(fdt_totalsize(gd->fdt_blob) + 0x1000, 32); -#endif - total_size = ALIGN(uboot_size, 1 << 12) + CONFIG_SYS_MALLOC_LEN + - CONFIG_SYS_STACK_SIZE + fdt_size; - - dest_addr = board_get_usable_ram_top(total_size); - /* - * NOTE: All destination address are rounded down to 16-byte - * boundary to satisfy various worst-case alignment - * requirements - */ - dest_addr &= ~15; - -#if defined(CONFIG_OF_SEPARATE) && defined(CONFIG_OF_CONTROL) - /* - * If the device tree is sitting immediate above our image then we - * must relocate it. If it is embedded in the data section, then it - * will be relocated with other data. - */ - if (gd->fdt_blob) { - dest_addr -= fdt_size; - gd->new_fdt = (void *)dest_addr; - dest_addr &= ~15; - } -#endif - /* U-Boot is below the FDT */ - dest_addr -= uboot_size; - dest_addr &= ~((1 << 12) - 1); - gd->relocaddr = dest_addr; - gd->reloc_off = dest_addr - (uintptr_t)&__text_start; - - /* Stack is at the bottom, so it can grow down */ - gd->start_addr_sp = dest_addr - CONFIG_SYS_MALLOC_LEN; - - return 0; -} - int init_cache_f_r(void) { #if defined(CONFIG_X86_RESET_VECTOR) & !defined(CONFIG_HAVE_FSP) |