[Intel-gfx] [PATCH v2 00/11] HDMI YCBCR output handling in DRM layer
Shashank Sharma
shashank.sharma at intel.com
Tue May 30 12:13:39 UTC 2017
This patch series adds DRM layer support for YCBCR HDMI output handling.
The target HDMI YCBCR outputs are:
- YCBCR444
- YCBCR422
- YCBCR420
As YCBCR420 output is added in HDMI 2.0, this patch series also
contain few patches to handle new EDID extention blocks, added
for YCBCR420 modes (CEA-861-F)
First two patches, complete the CEA modedb in drm driver, by adding
new 4k modes. Current CEA modedb contains 64 modes only (VIC 1-64),
whereas YCBCR420 output can support 4k modes, from VIC range 93-107.
First patch makes sure that it doesn't break existing HDMI 1.4 monitors,
adding new VICs.
Next 3 patches, parse and accomodate YCBCR420 suppor information from the
sink, and stores into display info strucure. This contains parsing YCBCR420
supported modes, and deep color information.
Next 2 patch create a property (hdmi_output) using which, as userspace can
set its preferred HDMI output from RGB, YCBCR444/422/420 etc. Default value
of the property is set to RGB(0) so that it doesnt affect existing
implementations. Other patch takes care of setting AVI IF colorspace as per
the selected output.
Last 3 patches contain implementation of YCBCR output in I915 HDMI subsystem.
V2:
- V1 of this patch series was handling both VDB(YCBCR420 only) and VCB
(YCBCR420 also) EDID blocks to extract YCBCR420 modes. This series
handles only VCB blocks, a follow up series will handle VDB blocks.
This series is tested on Intel GLK platform, using ASTRO-VA-1844A HDMI
tester.
Shashank Sharma (11):
drm: Add HDMI 2.0 VIC support for AVI info-frames
drm/edid: Complete CEA modedb(VIC 1-107)
drm: parse ycbcr420 cmdb block
drm: parse ycbcr 420 deep color information
drm: create hdmi output property
drm: set output colorspace in AVI infoframe
drm: add ycbcr helper functions
drm/i915: handle ycbcr outputs
drm/i915: handle csc for ycbcr HDMI output
drm/i915: prepare ycbcr420 modeset
drm/i915: set colorspace for ycbcr outputs
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 | 2 +
drivers/gpu/drm/drm_atomic_helper.c | 4 +
drivers/gpu/drm/drm_connector.c | 32 +++
drivers/gpu/drm/drm_edid.c | 402 +++++++++++++++++++++++++++++-
drivers/gpu/drm/drm_modes.c | 177 +++++++++++++
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 | 67 +++++
drivers/gpu/drm/i915/intel_drv.h | 13 +-
drivers/gpu/drm/i915/intel_hdmi.c | 149 ++++++++++-
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 | 33 +++
include/drm/drm_edid.h | 14 +-
include/drm/drm_mode_config.h | 5 +
include/drm/drm_modes.h | 16 ++
34 files changed, 981 insertions(+), 31 deletions(-)
--
2.7.4
More information about the Intel-gfx
mailing list