summaryrefslogtreecommitdiff
path: root/common/board_r.c
diff options
context:
space:
mode:
authorAlexander Graf <agraf@suse.de>2016-03-04 00:10:04 (GMT)
committerTom Rini <trini@konsulko.com>2016-03-16 01:30:10 (GMT)
commit5d00995c361c5a01b0684927d2686fdb540ab467 (patch)
tree3522c68b25ae145c7148a22f3f8f3f86e8a2aae4 /common/board_r.c
parentb9939336d09ddc01e9e9d4e6a654f54f28decb12 (diff)
downloadu-boot-5d00995c361c5a01b0684927d2686fdb540ab467.tar.xz
efi_loader: Implement memory allocation and map
The EFI loader needs to maintain views of memory - general system memory windows as well as used locations inside those and potential runtime service MMIO windows. To manage all of these, add a few helpers that maintain an internal representation of the map the similar to how the EFI API later on reports it to the application. For allocations, the scheme is very simple. We basically allow allocations to replace chunks of previously done maps, so that a new LOADER_DATA allocation for example can remove a piece of the RAM map. When no specific address is given, we just take the highest possible address in the lowest RAM map that fits the allocation size. Signed-off-by: Alexander Graf <agraf@suse.de> Tested-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'common/board_r.c')
-rw-r--r--common/board_r.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/common/board_r.c b/common/board_r.c
index 6432d23..2cb6836 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -795,6 +795,9 @@ init_fnc_t init_sequence_r[] = {
#ifdef CONFIG_CLOCKS
set_cpu_clk_info, /* Setup clock information */
#endif
+#ifdef CONFIG_EFI_LOADER
+ efi_memory_init,
+#endif
stdio_init_tables,
initr_serial,
initr_announce,