linux/drivers/gpu/drm/vc4
Boris Brezillon 0560054da5 drm/vc4: ->x_scaling[1] should never be set to VC4_SCALING_NONE
For the YUV conversion to work properly, ->x_scaling[1] should never
be set to VC4_SCALING_NONE, but vc4_get_scaling_mode() might return
VC4_SCALING_NONE if the horizontal scaling ratio exactly matches the
horizontal subsampling factor. Add a test to turn VC4_SCALING_NONE
into VC4_SCALING_PPF when that happens.

The old ->x_scaling[0] adjustment is dropped as I couldn't find any
mention to this constraint in the spec and it's proven to be
unnecessary (I tested various multi-planar YUV formats with scaling
disabled, and all of them worked fine without this adjustment).

Fixes: fc04023faf ("drm/vc4: Add support for YUV planes.")
Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Link: https://patchwork.freedesktop.org/patch/msgid/20181109102633.32603-1-boris.brezillon@bootlin.com
2018-11-09 15:29:54 +01:00
..
Kconfig
Makefile drm/vc4: Add support for the transposer block 2018-07-07 07:54:46 +02:00
vc4_bo.c gpu: drm: vc4: Adding new typedef vm_fault_t 2018-06-21 13:01:50 -07:00
vc4_crtc.c drm: extract drm_atomic_uapi.c 2018-09-09 14:19:18 +02:00
vc4_debugfs.c drm/vc4: Add support for the transposer block 2018-07-07 07:54:46 +02:00
vc4_dpi.c drm/vc4: Fix oops dereferencing DPI's connector since panel_bridge. 2018-05-07 10:19:11 -04:00
vc4_drv.c drm/vc4: Use drm_atomic_helper_shutdown 2018-10-05 18:04:10 +02:00
vc4_drv.h drm/vc4: Add support for the transposer block 2018-07-07 07:54:46 +02:00
vc4_dsi.c drm/vc4: Support the case where the DSI device is disabled 2018-07-10 17:59:05 +02:00
vc4_fence.c drm/vc4: Remove unecessary dma_fence_ops 2018-07-03 13:14:10 +02:00
vc4_gem.c dma-buf: allow reserving more than one shared fence slot 2018-10-25 13:45:07 +02:00
vc4_hdmi.c drm: drop _mode_ from drm_mode_connector_attach_encoder 2018-07-13 18:40:27 +02:00
vc4_hvs.c
vc4_irq.c
vc4_kms.c drm/vc4: Use drm_fbdev_generic_setup() 2018-09-25 11:35:06 +02:00
vc4_packet.h
vc4_perfmon.c
vc4_plane.c drm/vc4: ->x_scaling[1] should never be set to VC4_SCALING_NONE 2018-11-09 15:29:54 +01:00
vc4_qpu_defines.h
vc4_regs.h drm/vc4: Define missing PITCH0_SINK_PIX field 2018-10-24 17:58:08 +02:00
vc4_render_cl.c
vc4_trace.h
vc4_trace_points.c
vc4_txp.c drm/vc4: Add support for the transposer block 2018-07-07 07:54:46 +02:00
vc4_v3d.c
vc4_validate.c
vc4_validate_shaders.c
vc4_vec.c drm: drop _mode_ from drm_mode_connector_attach_encoder 2018-07-13 18:40:27 +02:00