From 694afdc865333f8f628d6f5841f48b2ceef3258b Mon Sep 17 00:00:00 2001 From: Kever Yang Date: Mon, 28 May 2018 17:54:11 +0800 Subject: [PATCH] rockchip: display: support reserve memory for rkfb Some rockchip SDK like rk3399 Android 6.0 is still using rkfb in kernel as display framework, in this case we need to: - use a separate dtb in U-Boot which is drm display node; - disable CONFIG_USING_KERNEL_DTB in U-Boot - pass the reserve memory for kernel rkfb in U-Boot Change-Id: I80df05d3cf15dce203c4397544b65f80fde1d22a Signed-off-by: Kever Yang --- drivers/video/drm/rockchip_display.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/video/drm/rockchip_display.c b/drivers/video/drm/rockchip_display.c index d192193476..69eb7900e4 100644 --- a/drivers/video/drm/rockchip_display.c +++ b/drivers/video/drm/rockchip_display.c @@ -1089,7 +1089,7 @@ void rockchip_display_fixup(void *blob) const struct rockchip_connector *conn; const struct rockchip_crtc *crtc; struct display_state *s; - u32 offset; + int offset; const struct device_node *np; const char *path; @@ -1101,6 +1101,12 @@ void rockchip_display_fixup(void *blob) (u64)get_display_size()); if (offset < 0) { printf("failed to add drm-loader-logo memory\n"); + /* Compatible with rkfb display, only need reserve memory */ + offset = fdt_update_reserved_memory(blob, "rockchip,fb-logo", + (u64)memory_start, + (u64)get_display_size()); + if (offset < 0) + printf("failed to add fb-loader-logo memory\n"); return; }