[PATCH v2 00/11] HDMI YCBCR output handling in DRM layer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

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




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux