All of lore.kernel.org
 help / color / mirror / Atom feed
* [RESEND-CI v4 00/15] HDMI YCBCR output handling in DRM layer
@ 2017-06-21 10:33 Shashank Sharma
  2017-06-21 10:33 ` [RESEND-CI v4 01/15] drm: add HDMI 2.0 VIC support for AVI info-frames Shashank Sharma
                   ` (14 more replies)
  0 siblings, 15 replies; 58+ messages in thread
From: Shashank Sharma @ 2017-06-21 10:33 UTC (permalink / raw)
  To: dri-devel, intel-gfx, ville.syrjala

This patch series adds support for YCBCR HDMI output handling in DRM layer.
The main aim of this patch series was to handle YCBCR 4:2:0 output for
HDMI 2.0 displays. But while providing a framework to handle non-RGB
outputs, support for YCBCR 4:4:4 and 4:2:2 was also added.

First 2 patches, complete the CEA mode-db in drm driver, by adding
new 4k modes. Current CEA mode-db contains 64 modes only (VIC 1-64),
whereas CEA-861-F defined VICs up to 107, including 4k modes, from VIC range
93-107. First patch makes sure that inclusion of these modes doesn't break
existing HDMI 1.4 monitors, across various drivers.

Next 3 patches focus on parsing new YCBCR 4:2:0 EDID blocks, and adding
YCBCR 4:2:0 modes in connector (only for connectors who declare themselves
as HDMI 2.0 compliant during init)

Next 6 patch create a property (hdmi_output_format) and add the framework
to handle the HDMI output type defined in the property. There are also some
helper functions provided, to help with the YCBCR HDMI output, like adding
deep color information, set color space and get the appropriate YCBCR output
based on source + sink capabilities.

A User can set the HDMI output property, and select the desired output
from YCBCR 4:4:4, 4:2:2 or 4:2:0. A driver can use framework's helper
functions to check if this source + sink + mode combination can drive
the desired output, or what would be the best suitable output.

By default the value of the property is default RGB, so if you don't
set the property, there is no change in the regular functionality of
an existing source.

More details are available with respective patches.

Last 6 patches add the I915 core implementation of the HDMI output handling.
This patch series was tested with a GLK device, ACER S277HK monitor and
ASTRO VA-1844A HDMI analyzer.

V3: Added a new patch to introduce YCBCR_420_allowed identifier.
V4: Added a new patch to re-sequence sink info parsing befor CEA modes.
V4-RESEND-CI: Added V5 for patch 7, to fix CI regression, no
	      change elsewhere.

Shashank Sharma (15):
  drm: add HDMI 2.0 VIC support for AVI info-frames
  drm: add YCBCR 420 capability identifier
  drm/edid: Complete CEA modedb(VIC 1-107)
  drm/edid: parse YCBCR 420 videomodes from EDID
  drm/edid: parse ycbcr 420 deep color information
  drm/edid: parse sink information before CEA blocks
  drm: create hdmi output property
  drm: set output colorspace in AVI infoframe
  drm: add helper functions for YCBCR output handling
  drm/i915: add compute-config for YCBCR outputs
  drm/i915: prepare scaler for YCBCR420 modeset
  drm/i915: prepare pipe for YCBCR output
  drm/i915: prepare csc unit for YCBCR HDMI output
  drm/i915: set colorspace for ycbcr outputs
  drm/i915/glk: set HDMI 2.0 identifier

 drivers/gpu/drm/amd/amdgpu/dce_v10_0.c    |   2 +-
 drivers/gpu/drm/amd/amdgpu/dce_v11_0.c    |   2 +-
 drivers/gpu/drm/amd/amdgpu/dce_v8_0.c     |   2 +-
 drivers/gpu/drm/bridge/analogix-anx78xx.c |   3 +-
 drivers/gpu/drm/bridge/sii902x.c          |   2 +-
 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c |   2 +-
 drivers/gpu/drm/drm_atomic.c              |   4 +
 drivers/gpu/drm/drm_atomic_helper.c       |   4 +
 drivers/gpu/drm/drm_connector.c           |  32 +++
 drivers/gpu/drm/drm_edid.c                | 462 +++++++++++++++++++++++++++++-
 drivers/gpu/drm/drm_modes.c               | 307 ++++++++++++++++++++
 drivers/gpu/drm/exynos/exynos_hdmi.c      |   2 +-
 drivers/gpu/drm/i2c/tda998x_drv.c         |   2 +-
 drivers/gpu/drm/i915/i915_reg.h           |   3 +
 drivers/gpu/drm/i915/intel_atomic.c       |   6 +
 drivers/gpu/drm/i915/intel_color.c        |  47 ++-
 drivers/gpu/drm/i915/intel_display.c      |  68 +++++
 drivers/gpu/drm/i915/intel_drv.h          |  13 +-
 drivers/gpu/drm/i915/intel_hdmi.c         | 131 ++++++++-
 drivers/gpu/drm/i915/intel_panel.c        |   3 +-
 drivers/gpu/drm/i915/intel_sdvo.c         |   3 +-
 drivers/gpu/drm/mediatek/mtk_hdmi.c       |   2 +-
 drivers/gpu/drm/omapdrm/omap_encoder.c    |   3 +-
 drivers/gpu/drm/radeon/radeon_audio.c     |   2 +-
 drivers/gpu/drm/rockchip/inno_hdmi.c      |   2 +-
 drivers/gpu/drm/sti/sti_hdmi.c            |   2 +-
 drivers/gpu/drm/tegra/hdmi.c              |   2 +-
 drivers/gpu/drm/tegra/sor.c               |   2 +-
 drivers/gpu/drm/vc4/vc4_hdmi.c            |   2 +-
 drivers/gpu/drm/zte/zx_hdmi.c             |   2 +-
 include/drm/drm_connector.h               |  50 ++++
 include/drm/drm_edid.h                    |  14 +-
 include/drm/drm_mode_config.h             |   5 +
 include/drm/drm_modes.h                   |   5 +
 34 files changed, 1159 insertions(+), 34 deletions(-)

-- 
2.7.4

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 58+ messages in thread

end of thread, other threads:[~2017-07-03 11:24 UTC | newest]

Thread overview: 58+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-21 10:33 [RESEND-CI v4 00/15] HDMI YCBCR output handling in DRM layer Shashank Sharma
2017-06-21 10:33 ` [RESEND-CI v4 01/15] drm: add HDMI 2.0 VIC support for AVI info-frames Shashank Sharma
2017-06-21 13:41   ` Neil Armstrong
2017-06-30 11:54   ` Ville Syrjälä
2017-07-03  9:06     ` Sharma, Shashank
2017-07-03  9:57       ` Ville Syrjälä
2017-07-03 11:24         ` Sharma, Shashank
2017-06-21 10:34 ` [RESEND-CI v4 02/15] drm: add YCBCR 420 capability identifier Shashank Sharma
2017-06-21 13:42   ` Neil Armstrong
2017-06-21 10:34 ` [RESEND-CI v4 03/15] drm/edid: Complete CEA modedb(VIC 1-107) Shashank Sharma
2017-06-21 13:42   ` Neil Armstrong
2017-06-27 11:32   ` Ville Syrjälä
2017-06-30  5:11     ` Sharma, Shashank
2017-06-21 10:34 ` [RESEND-CI v4 04/15] drm/edid: parse YCBCR 420 videomodes from EDID Shashank Sharma
2017-06-27 11:52   ` Ville Syrjälä
2017-06-30  5:17     ` Sharma, Shashank
2017-06-30 11:58       ` Ville Syrjälä
2017-06-30 12:08         ` Sharma, Shashank
2017-06-21 10:34 ` [RESEND-CI v4 05/15] drm/edid: parse ycbcr 420 deep color information Shashank Sharma
2017-06-27 11:53   ` Ville Syrjälä
2017-06-30  5:20     ` Sharma, Shashank
2017-06-21 10:34 ` [RESEND-CI v4 06/15] drm/edid: parse sink information before CEA blocks Shashank Sharma
2017-06-27 11:55   ` Ville Syrjälä
2017-06-30  5:22     ` Sharma, Shashank
2017-06-30 11:46       ` Ville Syrjälä
2017-06-30 12:01         ` Sharma, Shashank
2017-06-21 10:34 ` [RESEND-CI v4 08/15] drm: set output colorspace in AVI infoframe Shashank Sharma
2017-06-21 10:34 ` [RESEND-CI v4 09/15] drm: add helper functions for YCBCR output handling Shashank Sharma
2017-06-22  7:05   ` [Intel-gfx] " Daniel Vetter
2017-06-22  9:42     ` Sharma, Shashank
2017-06-23  9:12       ` Daniel Vetter
2017-06-23 10:01         ` [Intel-gfx] " Sharma, Shashank
2017-06-21 10:34 ` [RESEND-CI v4 10/15] drm/i915: add compute-config for YCBCR outputs Shashank Sharma
2017-06-21 10:34 ` [RESEND-CI v4 11/15] drm/i915: prepare scaler for YCBCR420 modeset Shashank Sharma
2017-06-27 12:16   ` Ander Conselvan De Oliveira
2017-06-30  5:50     ` Sharma, Shashank
2017-06-30 11:34       ` Ander Conselvan De Oliveira
2017-06-30 11:59         ` Sharma, Shashank
2017-06-30 14:15           ` Ander Conselvan De Oliveira
2017-06-30 14:27             ` Sharma, Shashank
2017-06-21 10:34 ` [RESEND-CI v4 12/15] drm/i915: prepare pipe for YCBCR output Shashank Sharma
2017-06-21 10:34 ` [RESEND-CI v4 13/15] drm/i915: prepare csc unit for YCBCR HDMI output Shashank Sharma
2017-06-29 12:08   ` Ander Conselvan De Oliveira
2017-06-30  6:03     ` Sharma, Shashank
2017-06-30 10:57       ` Ander Conselvan De Oliveira
2017-06-21 10:34 ` [RESEND-CI v4 14/15] drm/i915: set colorspace for ycbcr outputs Shashank Sharma
2017-06-21 10:34 ` [RESEND-CI v4 15/15] drm/i915/glk: set HDMI 2.0 identifier Shashank Sharma
2017-06-30 12:07   ` [Intel-gfx] " Ander Conselvan De Oliveira
2017-06-30 12:17     ` Sharma, Shashank
2017-06-30 13:28       ` [Intel-gfx] " Ander Conselvan De Oliveira
2017-06-21 10:34 ` [PATCH v5 7/7] drm: create hdmi output property Shashank Sharma
2017-06-22  7:14   ` [Intel-gfx] " Daniel Vetter
2017-06-22  8:33     ` Sharma, Shashank
2017-06-23  9:20       ` [Intel-gfx] " Daniel Vetter
2017-06-23 10:05         ` Sharma, Shashank
2017-06-23 10:28           ` Daniel Vetter
2017-06-27 12:14   ` Ville Syrjälä
2017-06-30  5:43     ` Sharma, Shashank

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.