summaryrefslogtreecommitdiff
path: root/drivers/video
diff options
context:
space:
mode:
authorEmmanuel Vadot <manu@freebsd.org>2018-05-04 10:26:55 +0200
committerAlexander Graf <agraf@suse.de>2018-06-03 15:27:20 +0200
commitd9b63ea9876d9bac4e1c137a0b66a111fb2b03c7 (patch)
tree5b7d1a775f558b902d75b873ddd875a82ee8ed67 /drivers/video
parentd73c8bc052f9b5f472b59ccd3c88e3ecc6359075 (diff)
video: sunxi: de2: Reserve the fb region in the EFI memory map
If compile with support for the efi loader we need to mark the pages allocated for the framebuffer as reserved so the kernel won't attempt to use them for other uses. Signed-off-by: Emmanuel Vadot <manu@freebsd.org> Acked-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/sunxi/sunxi_de2.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/video/sunxi/sunxi_de2.c b/drivers/video/sunxi/sunxi_de2.c
index a2303db9af..4ed035d556 100644
--- a/drivers/video/sunxi/sunxi_de2.c
+++ b/drivers/video/sunxi/sunxi_de2.c
@@ -9,6 +9,7 @@
#include <display.h>
#include <dm.h>
#include <edid.h>
+#include <efi_loader.h>
#include <fdtdec.h>
#include <fdt_support.h>
#include <video.h>
@@ -221,6 +222,13 @@ static int sunxi_de2_init(struct udevice *dev, ulong fbbase,
uc_priv->bpix = l2bpp;
debug("fb=%lx, size=%d %d\n", fbbase, uc_priv->xsize, uc_priv->ysize);
+#ifdef CONFIG_EFI_LOADER
+ efi_add_memory_map(fbbase,
+ ALIGN(timing.hactive.typ * timing.vactive.typ *
+ (1 << l2bpp) / 8, EFI_PAGE_SIZE) >> EFI_PAGE_SHIFT,
+ EFI_RESERVED_MEMORY_TYPE, false);
+#endif
+
return 0;
}