drm/rockchip: gem: don't limit to 32bit mapping when not support LPAE

Change-Id: Ia4fab3d63947ba693488fb58e3a104d400bd6e23
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Signed-off-by: Meiyou Chen <cmy@rock-chips.com>
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
This commit is contained in:
Sandy Huang
2019-06-11 16:29:48 +08:00
committed by Tao Huang
parent f03547f360
commit d135266e27

View File

@@ -588,9 +588,15 @@ static void rockchip_gem_release_object(struct rockchip_gem_object *rk_obj)
static struct rockchip_gem_object *
rockchip_gem_alloc_object(struct drm_device *drm, unsigned int size)
{
struct address_space *mapping;
struct rockchip_gem_object *rk_obj;
struct drm_gem_object *obj;
#ifdef CONFIG_ARM_LPAE
gfp_t gfp_mask = GFP_HIGHUSER | __GFP_RECLAIMABLE | __GFP_DMA32;
#else
gfp_t gfp_mask = GFP_HIGHUSER | __GFP_RECLAIMABLE;
#endif
size = round_up(size, PAGE_SIZE);
rk_obj = kzalloc(sizeof(*rk_obj), GFP_KERNEL);
@@ -601,6 +607,9 @@ static struct rockchip_gem_object *
drm_gem_object_init(drm, obj, size);
mapping = file_inode(obj->filp)->i_mapping;
mapping_set_gfp_mask(mapping, gfp_mask);
return rk_obj;
}