cbmem_top: Fix comment and remove upper limit
There's no such limit on 64 Bit coreboot builds. * Fix comment in cbmem.h * Remove 4 GiB limit on Cavium SoCs Tested on opencellular/elgon. Still boots Linux as payload. Change-Id: I8c9c6a5ff81bee48311e8bf8e383d1a032ea3a6d Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-on: https://review.coreboot.org/c/30609 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
parent
267684f10e
commit
ab0a77453c
|
@ -70,7 +70,8 @@ void cbmem_top_init(void);
|
||||||
|
|
||||||
/* Return the top address for dynamic cbmem. The address returned needs to
|
/* Return the top address for dynamic cbmem. The address returned needs to
|
||||||
* be consistent across romstage and ramstage, and it is required to be
|
* be consistent across romstage and ramstage, and it is required to be
|
||||||
* below 4GiB.
|
* below 4GiB for 32bit coreboot builds. On 64bit coreboot builds there's no
|
||||||
|
* upper limit.
|
||||||
* x86 boards or chipsets must return NULL before the cbmem backing store has
|
* x86 boards or chipsets must return NULL before the cbmem backing store has
|
||||||
* been initialized. */
|
* been initialized. */
|
||||||
void *cbmem_top(void);
|
void *cbmem_top(void);
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
* This file is part of the coreboot project.
|
* This file is part of the coreboot project.
|
||||||
*
|
*
|
||||||
* Copyright 2014 Rockchip Inc.
|
* Copyright 2014 Rockchip Inc.
|
||||||
|
* Copyright 2019 9Elements GmbH <patrick.rudolph@9elements.com>
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify
|
* This program is free software; you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
@ -22,6 +23,5 @@
|
||||||
void *cbmem_top(void)
|
void *cbmem_top(void)
|
||||||
{
|
{
|
||||||
/* Make sure not to overlap with reserved ATF scratchpad */
|
/* Make sure not to overlap with reserved ATF scratchpad */
|
||||||
return (void *)min((uintptr_t)_dram + (sdram_size_mb() - 1) * MiB,
|
return (void *)((uintptr_t)_dram + (sdram_size_mb() - 1) * MiB);
|
||||||
4ULL * GiB);
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue