mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-11 07:24:46 +00:00

Add generic logic to determine the ram_top value for boards. Earlier, this was achieved in an indirect manner through a set of LMB API's. That has since changed so that the LMB code is available only after relocation. Replace those LMB calls with a single call to get_mem_top() to determine the value of ram_top. Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org> Reviewed-by: Michal Simek <michal.simek@amd.com> Link: https://lore.kernel.org/r/20241025172724.195093-2-sughosh.ganu@linaro.org Signed-off-by: Michal Simek <michal.simek@amd.com>
22 lines
700 B
C
22 lines
700 B
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* Copyright (c) 2024, Linaro Limited
|
|
*/
|
|
|
|
/**
|
|
* get_mem_top() - Compute the value of ram_top
|
|
* @ram_start: Start of RAM
|
|
* @ram_size: RAM size
|
|
* @size: Minimum RAM size requested
|
|
* @fdt: FDT blob
|
|
*
|
|
* The function computes the top address of RAM memory that can be
|
|
* used by U-Boot. This is being done by going through the list of
|
|
* reserved memory regions specified in the devicetree blob passed
|
|
* to the function. The logic used here is derived from the lmb
|
|
* allocation function.
|
|
*
|
|
* Return: address of ram top on success, 0 on failure
|
|
*/
|
|
phys_addr_t get_mem_top(phys_addr_t ram_start, phys_size_t ram_size,
|
|
phys_size_t size, void *fdt);
|