To implement the EFI_SYSTEM_TABLE_POINTER we need 4 MiB aligned memory. On the sandbox LMB uses addresses relative to the start of a page aligned RAM buffer allocated with mmap(). This leads to a mismatch of alignment between EFI which uses pointers and LMB which uses phys_addr_t. Ensure that the RAM buffer used for LMB is 4 MiB aligned. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
27 lines
641 B
C
27 lines
641 B
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* Copyright (c) 2011 The Chromium OS Authors.
|
|
*/
|
|
|
|
#ifndef __CONFIG_H
|
|
#define __CONFIG_H
|
|
|
|
#define CFG_MALLOC_F_ADDR 0x000f4000
|
|
|
|
/* Size of our emulated memory */
|
|
#define SB_CONCAT(x, y) x ## y
|
|
#define SB_TO_UL(s) SB_CONCAT(s, UL)
|
|
#define CFG_SYS_SDRAM_BASE 0
|
|
#define CFG_SYS_SDRAM_SIZE \
|
|
(SB_TO_UL(CONFIG_SANDBOX_RAM_SIZE_MB) << 20)
|
|
/** define SB_SDRAM_ALIGN - Alignment of emulated RAM */
|
|
#define SB_SDRAM_ALIGN 0x400000
|
|
|
|
#define CFG_SYS_BAUDRATE_TABLE {4800, 9600, 19200, 38400, 57600,\
|
|
115200}
|
|
|
|
/* Unused but necessary to build */
|
|
#define CFG_SYS_UBOOT_BASE CONFIG_TEXT_BASE
|
|
|
|
#endif
|