linux-stable/drivers/gpu/drm/rcar-du
Laurent Pinchart 401712e035 drm: rcar-du: Clip planes to screen boundaries
Unlike the KMS API, the hardware doesn't support planes exceeding the
screen boundaries or planes being located fully off-screen. We need to
clip plane coordinates to support the use case.

Fortunately the DRM core offers a drm_atomic_helper_check_plane_state()
helper that validates the scaling factor and clips the plane
coordinates. Use it to implement the plane atomic check and use the
clipped source and destination rectangles from the plane state instead
of the unclipped source and CRTC coordinates to configure the device.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
2017-12-04 18:38:31 +02:00
..
Kconfig drm: rcar-du: Add Gen3 HDMI encoder support 2017-04-04 17:04:13 +03:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
rcar_du_crtc.c drm: rcar-du: Clip planes to screen boundaries 2017-12-04 18:38:31 +02:00
rcar_du_crtc.h drm: rcar-du: Repair vblank for DRM page flips using the VSP 2017-08-03 16:17:30 +03:00
rcar_du_drv.c drm: rcar-du: Implement system suspend/resume support 2017-12-04 13:04:11 +02:00
rcar_du_drv.h drm: rcar-du: Implement system suspend/resume support 2017-12-04 13:04:11 +02:00
rcar_du_encoder.c drm: Convert to using %pOF instead of full_name 2017-07-26 13:45:06 +02:00
rcar_du_encoder.h drm: rcar-du: Hardcode encoders types to DRM_MODE_ENCODER_NONE 2017-04-04 17:04:04 +03:00
rcar_du_group.c drm: rcar-du: Configure DPAD0 routing through last group on Gen3 2017-08-03 16:17:24 +03:00
rcar_du_group.h drm: rcar-du: Restart the DU group when a plane source changes 2016-02-20 02:58:55 +02:00
rcar_du_kms.c drm/rcar-du: Use drm_gem_fb_create() 2017-10-01 17:02:53 +02:00
rcar_du_kms.h drm/rcar-du: Update copyright notice 2014-09-15 11:34:06 +03:00
rcar_du_lvdscon.c drm: rcar-du: Don't set connector DPMS property 2017-12-04 13:04:11 +02:00
rcar_du_lvdscon.h drm: rcar-du: Constify node argument to rcar_du_lvds_connector_init() 2016-11-14 03:35:12 +02:00
rcar_du_lvdsenc.c drm: rcar-du: Fix comments to comply with the kernel coding style 2017-08-03 16:17:22 +03:00
rcar_du_lvdsenc.h drm: rcar-du: Add support for LVDS mode selection 2017-04-04 17:03:57 +03:00
rcar_du_plane.c drm: rcar-du: Clip planes to screen boundaries 2017-12-04 18:38:31 +02:00
rcar_du_plane.h drm: rcar-du: Share plane atomic check code between Gen2 and Gen3 2017-12-04 13:04:11 +02:00
rcar_du_regs.h drm: rcar-du: Add DPLL support 2017-04-04 17:04:19 +03:00
rcar_du_vsp.c drm: rcar-du: Clip planes to screen boundaries 2017-12-04 18:38:31 +02:00
rcar_du_vsp.h drm: rcar-du: Support multiple sources from the same VSP 2017-08-03 16:17:22 +03:00
rcar_dw_hdmi.c drm: rcar-du: Remove an unneeded NULL check 2017-08-03 16:17:25 +03:00
rcar_lvds_regs.h drm: rcar-du: lvds: Add R-Car Gen3 support 2016-02-23 09:34:32 +02:00