From 6aed65b3da151a0ee4e26e90e2727b3b8121a04a Mon Sep 17 00:00:00 2001 From: Sandy Huang Date: Wed, 27 Nov 2019 14:05:11 +0800 Subject: [PATCH] drm/rockchip: gem: support cpu cache for drm memory Change-Id: Ic9ca3d0862eb8c5c4d8a002db8cbbcc93d2dcc02 Signed-off-by: Mark Yao Signed-off-by: Sandy Huang --- drivers/gpu/drm/rockchip/rockchip_drm_gem.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_gem.c b/drivers/gpu/drm/rockchip/rockchip_drm_gem.c index 9fc236320936..eed0b0fd9fa6 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_gem.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_gem.c @@ -525,6 +525,10 @@ static int rockchip_drm_gem_object_mmap(struct drm_gem_object *obj, int ret; struct rockchip_gem_object *rk_obj = to_rockchip_obj(obj); + /* default is wc. */ + if (rk_obj->flags & ROCKCHIP_BO_CACHABLE) + vma->vm_page_prot = vm_get_page_prot(vma->vm_flags); + /* * We allocated a struct page table for rk_obj, so clear * VM_PFNMAP flag that was set by drm_gem_mmap_obj()/drm_gem_mmap().