浏览代码

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>
Emmanuel Vadot 7 年之前
父节点
当前提交
d9b63ea987
共有 1 个文件被更改,包括 8 次插入0 次删除
  1. 8 0
      drivers/video/sunxi/sunxi_de2.c

+ 8 - 0
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;
 }