linux/drivers/gpu/drm/rockchip
Ørjan Eide 57de50af16 drm/rockchip: Respect page offset for PRIME mmap calls
When mapping external DMA-bufs through the PRIME mmap call, we might be
given an offset which has to be respected. However for the internal DRM
GEM mmap path, we have to ignore the fake mmap offset used to identify
the buffer only. Currently the code always zeroes out vma->vm_pgoff,
which breaks the former.

This patch fixes the problem by moving the vm_pgoff assignment to a
function that is used only for GEM mmap path, so that the PRIME path
retains the original offset.

Cc: Daniel Kurtz <djkurtz@chromium.org>
Signed-off-by: Ørjan Eide <orjan.eide@arm.com>
Signed-off-by: Tomasz Figa <tfiga@chromium.org>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Thierry Escande <thierry.escande@collabora.com>
Tested-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20180130202913.28724-4-thierry.escande@collabora.com
2018-02-18 11:16:55 +01:00
..
analogix_dp-rockchip.c
cdn-dp-core.c
cdn-dp-core.h
cdn-dp-reg.c
cdn-dp-reg.h
dw_hdmi-rockchip.c drm/bridge/synopsys: dw-hdmi: don't clobber drvdata 2018-02-16 09:33:07 +01:00
dw-mipi-dsi.c drm/rockchip: dsi: Remove unnecessary platform_get_resource() error check 2018-02-18 11:14:58 +01:00
inno_hdmi.c drm/rockchip: inno_hdmi: Remove unnecessary platform_get_resource() error check 2018-02-18 11:15:29 +01:00
inno_hdmi.h
Kconfig
Makefile
rockchip_drm_drv.c drm/rockchip: support prime import sg table 2018-02-18 11:16:40 +01:00
rockchip_drm_drv.h
rockchip_drm_fb.c
rockchip_drm_fb.h
rockchip_drm_fbdev.c
rockchip_drm_fbdev.h
rockchip_drm_gem.c drm/rockchip: Respect page offset for PRIME mmap calls 2018-02-18 11:16:55 +01:00
rockchip_drm_gem.h drm/rockchip: support prime import sg table 2018-02-18 11:16:40 +01:00
rockchip_drm_psr.c
rockchip_drm_psr.h
rockchip_drm_vop.c drm/rockchip: Get rid of unnecessary struct fields 2018-02-18 11:16:19 +01:00
rockchip_drm_vop.h
rockchip_lvds.c
rockchip_lvds.h
rockchip_vop_reg.c
rockchip_vop_reg.h