linux/drivers/gpu/drm/vc4
Andrzej Pietrasiewicz 49d29a077a drm: vc4: adapt to new behaviour of drm_crtc.c
When drm_crtc_init_with_planes() was orignally added
(in drm_crtc.c, e13161af80
drm: Add drm_crtc_init_with_planes() (v2)), it only checked for "primary"
being non-null. If that was the case, it modified primary->possible_crtcs.

Then, when support for cursor planes was added
(fc1d3e44ef drm: Allow drivers to register
cursor planes with crtc), the same behaviour was implemented for cursor
planes.

vc4_plane_init() since its inception has passed 0xff as "possible_crtcs"
parameter to drm_universal_plane_init(). With a change in drm_crtc.c
(7abc7d4751 drm: don't override
possible_crtcs for primary/cursor planes) passing 0xff results in primary's
possible_crtcs set to 0xff (cursor was updated manually by vc4_crtc.c).
Consequently, it would be allowed to use the primary plane from CRTC 1 (for
example) on CRTC 0, which would result in the overlay and cursors being
buried.

Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Link: http://patchwork.freedesktop.org/patch/msgid/1485941708-27892-1-git-send-email-andrzej.p@samsung.com
Fixes: 7abc7d4751 ("drm: don't override possible_crtcs for primary/cursor planes")
2017-02-08 14:19:23 -08:00
..
Kconfig drm/vc4: Add DPI driver 2016-04-14 12:22:53 -07:00
Makefile drm/vc4: Add support for the VEC (Video Encoder) IP 2016-12-09 15:26:31 -08:00
vc4_bo.c drm/vc4: mark vc4_bo_cache_purge() static 2016-09-09 12:21:43 -07:00
vc4_crtc.c drm/vc4: Fix memory leak of the CRTC state. 2017-01-17 21:12:39 +11:00
vc4_debugfs.c drm/vc4: Add support for the VEC (Video Encoder) IP 2016-12-09 15:26:31 -08:00
vc4_dpi.c drm/vc4: Disallow interlaced modes on DPI. 2016-08-19 19:05:43 -07:00
vc4_drv.c This pull request brings in VEC (TV-out) support for vc4, along with a 2016-12-13 12:05:12 +10:00
vc4_drv.h drm/vc4: Add support for the VEC (Video Encoder) IP 2016-12-09 15:26:31 -08:00
vc4_gem.c drm/vc4: Return -EINVAL on the overflow checks failing. 2017-01-17 22:06:01 +11:00
vc4_hdmi.c drm/vc4: Add support for double-clocked modes. 2016-10-06 11:58:28 -07:00
vc4_hvs.c drm/vc4: Add support for scaling of display planes. 2016-02-16 11:24:08 -08:00
vc4_irq.c drm/vc4: Fix overflow mem unreferencing when the binner runs dry. 2016-08-19 19:17:34 -07:00
vc4_kms.c This pull request brings in VEC (TV-out) support for vc4, along with a 2016-12-13 12:05:12 +10:00
vc4_packet.h drm/vc4: Add support for drawing 3D frames. 2015-12-07 20:05:10 -08:00
vc4_plane.c drm: vc4: adapt to new behaviour of drm_crtc.c 2017-02-08 14:19:23 -08:00
vc4_qpu_defines.h drm/vc4: Fix definition of QPU_R_MS_REV_FLAGS 2016-07-15 15:19:52 -07:00
vc4_regs.h drm/vc4: Fix ->clock_select setting for the VEC encoder 2016-12-09 15:26:29 -08:00
vc4_render_cl.c drm/vc4: fix a bounds check 2017-01-17 21:12:59 +11:00
vc4_trace_points.c drm/vc4: Add support for drawing 3D frames. 2015-12-07 20:05:10 -08:00
vc4_trace.h drm/vc4: Add support for drawing 3D frames. 2015-12-07 20:05:10 -08:00
vc4_v3d.c drm/vc4: Use runtime autosuspend to avoid thrashing V3D power state. 2016-11-04 16:12:35 -07:00
vc4_validate_shaders.c drm/vc4: Add fragment shader threading support 2016-11-16 13:25:26 -08:00
vc4_validate.c drm/vc4: Add fragment shader threading support 2016-11-16 13:25:26 -08:00
vc4_vec.c drm/vc4: Add support for the VEC (Video Encoder) IP 2016-12-09 15:26:31 -08:00