diff options
author | Marek Vasut <marek.vasut@gmail.com> | 2021-09-10 22:47:09 +0200 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2021-09-23 14:15:32 -0400 |
commit | 1274698d13ce1dfd00275b821b512e17cdc88d98 (patch) | |
tree | 76901d76d954dc1b38b2ba74afbd5a3d26b7bb0a /include/lmb.h | |
parent | cfa1971977bbf2c5c4aa076924ca36f964a16a1a (diff) | |
download | u-boot-1274698d13ce1dfd00275b821b512e17cdc88d98.tar.gz u-boot-1274698d13ce1dfd00275b821b512e17cdc88d98.tar.bz2 u-boot-1274698d13ce1dfd00275b821b512e17cdc88d98.zip |
lmb: Add generic arch_lmb_reserve_generic()
The arc/arm/m68k/microblaze/mips/ppc arch_lmb_reserve() implementations
are all mostly the same, except for a couple of details. Implement a
generic arch_lmb_reserve_generic() function which can be parametrized
enough to cater for those differences between architectures. This can
also be parametrized enough so it can handle cases where U-Boot is not
relocated to the end of DRAM e.g. because there is some other reserved
memory past U-Boot (e.g. unmovable firmware for coprocessor), it is not
relocated at all, and other such use cases.
Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Cc: Alexey Brodkin <alexey.brodkin@synopsys.com>
Cc: Angelo Dureghello <angelo@sysam.it>
Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Cc: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Cc: Hai Pham <hai.pham.ud@renesas.com>
Cc: Michal Simek <monstr@monstr.eu>
Cc: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
Cc: Tom Rini <trini@konsulko.com>
Cc: Wolfgang Denk <wd@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'include/lmb.h')
-rw-r--r-- | include/lmb.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/lmb.h b/include/lmb.h index 3c4afdf9f0..1984291132 100644 --- a/include/lmb.h +++ b/include/lmb.h @@ -122,6 +122,7 @@ lmb_size_bytes(struct lmb_region *type, unsigned long region_nr) void board_lmb_reserve(struct lmb *lmb); void arch_lmb_reserve(struct lmb *lmb); +void arch_lmb_reserve_generic(struct lmb *lmb, ulong sp, ulong end, ulong align); /* Low level functions */ |