• Harry Wentland's avatar
    drm/display: Don't block HDR_OUTPUT_METADATA on unknown EOTF · e5eef23e
    Harry Wentland authored
    The EDID of an HDR display defines EOTFs that are supported
    by the display and can be set in the HDR metadata infoframe.
    Userspace is expected to read the EDID and set an appropriate
    HDR_OUTPUT_METADATA.
    
    In drm_parse_hdr_metadata_block the kernel reads the supported
    EOTFs from the EDID and stores them in the
    drm_connector->hdr_sink_metadata. While doing so it also
    filters the EOTFs to the EOTFs the kernel knows about.
    When an HDR_OUTPUT_METADATA is set it then checks to
    make sure the EOTF is a supported EOTF. In cases where
    the kernel doesn't know about a new EOTF this check will
    fail, even if the EDID advertises support.
    
    Since it is expected that userspace reads the EDID to understand
    what the display supports it doesn't make sense for DRM to block
    an HDR_OUTPUT_METADATA if it contains an EOTF the kernel doesn't
    understand.
    
    This comes with the added benefit of future-proofing metadata
    support. If the spec defines a new EOTF there is no need to
    update DRM and an compositor can immediately make use of it.
    
    Bug: https://gitlab.freedesktop.org/wayland/weston/-/issues/609
    
    v2: Distinguish EOTFs defind in kernel and ones defined
        in EDID in the commit description (Pekka)
    
    v3: Rebase; drm_hdmi_infoframe_set_hdr_metadata moved
        to drm_hdmi_helper.c
    Signed-off-by: default avatarHarry Wentland <harry.wentland@amd.com>
    Cc: Pekka Paalanen <ppaalanen@gmail.com>
    Cc: Sebastian Wick <sebastian.wick@redhat.com>
    Cc: Vitaly.Prosyak@amd.com
    Cc: Uma Shankar <uma.shankar@intel.com>
    Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Cc: Joshua Ashton <joshua@froggi.es>
    Cc: Jani Nikula <jani.nikula@linux.intel.com>
    Cc: dri-devel@lists.freedesktop.org
    Cc: amd-gfx@lists.freedesktop.org
    Acked-by: default avatarPekka Paalanen <pekka.paalanen@collabora.com>
    Reviewed-By: default avatarJoshua Ashton <joshua@froggi.es>
    Link: https://patchwork.freedesktop.org/patch/msgid/20230113162428.33874-2-harry.wentland@amd.comSigned-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    Cc: stable@vger.kernel.org
    e5eef23e
drm_hdmi_helper.c 6.71 KB