[PATCH 03/11] drm: parse ycbcr 420 vdb block
Ville Syrjälä
ville.syrjala at linux.intel.com
Mon May 8 16:24:35 UTC 2017
On Fri, Apr 07, 2017 at 07:39:20PM +0300, Shashank Sharma wrote:
> From: Jose Abreu <jose.abreu at synopsys.com>
>
> HDMI 2.0 spec adds support for ycbcr420 subsampled output.
> CEA-861-F adds two new blocks in EDID, to provide information about
> sink's support for ycbcr420 output.
>
> These new blocks are:
> - ycbcr420 video data (vdb) block: video modes which can be supported
> only in ycbcr420 output mode.
> - ycbcr420 video capability data (vcb) block: video modes which can be
> support in ycbcr420 output mode also (along with RGB, YCBCR 444/422 etc)
>
> This patch adds parsing and handling of ycbcr420-vdb in the DRM
> layer.
>
> This patch is a modified version of Jose's RFC patch:
> https://patchwork.kernel.org/patch/9492327/
> so the authorship is maintained.
>
> Cc: Ville Syrjala <ville.syrjala at linux.intel.com>
> Signed-off-by: Jose Abreu <joabreu at synopsys.com>
> Signed-off-by: Shashank Sharma <shashank.sharma at intel.com>
> ---
> drivers/gpu/drm/drm_edid.c | 54 +++++++++++++++++++++++++++++++++++++++++++--
> drivers/gpu/drm/drm_modes.c | 10 +++++++--
> include/drm/drm_connector.h | 1 +
> include/uapi/drm/drm_mode.h | 6 +++++
> 4 files changed, 67 insertions(+), 4 deletions(-)
<snip>
> diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
> index 4eeda12..cef76b2 100644
> --- a/include/drm/drm_connector.h
> +++ b/include/drm/drm_connector.h
> @@ -199,6 +199,7 @@ struct drm_display_info {
> #define DRM_COLOR_FORMAT_RGB444 (1<<0)
> #define DRM_COLOR_FORMAT_YCRCB444 (1<<1)
> #define DRM_COLOR_FORMAT_YCRCB422 (1<<2)
> +#define DRM_COLOR_FORMAT_YCRCB420 (1<<2)
>
> /**
> * @color_formats: HDMI Color formats, selects between RGB and YCrCb
> diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h
> index 8c67fc0..1e74d8e 100644
> --- a/include/uapi/drm/drm_mode.h
> +++ b/include/uapi/drm/drm_mode.h
> @@ -84,6 +84,12 @@ extern "C" {
> #define DRM_MODE_FLAG_3D_L_DEPTH_GFX_GFX_DEPTH (6<<14)
> #define DRM_MODE_FLAG_3D_TOP_AND_BOTTOM (7<<14)
> #define DRM_MODE_FLAG_3D_SIDE_BY_SIDE_HALF (8<<14)
> +/*
> + * HDMI 2.0
> + */
> +#define DRM_MODE_FLAG_420_MASK (0x03<<23)
> +#define DRM_MODE_FLAG_420 (1<<23)
> +#define DRM_MODE_FLAG_420_ONLY (1<<24)
Adding those would again break the uabi. We can't add new mode flags
without some kind of client cap. But I think we agreed that new user
space visible mode flags aren't needed, and instad we can keep it all
internal?
--
Ville Syrjälä
Intel OTC
More information about the dri-devel
mailing list