• Uma Shankar's avatar
    drm/i915: Attach colorspace property and enable modeset · 2f146b78
    Uma Shankar authored
    This patch attaches the colorspace connector property to the
    hdmi connector. Based on colorspace change, modeset will be
    triggered to switch to new colorspace.
    
    Based on colorspace property value create an infoframe
    with appropriate colorspace. This can be used to send an
    infoframe packet with proper colorspace value set which
    will help to enable wider color gamut like BT2020 on sink.
    
    This patch attaches and enables HDMI colorspace, DP will be
    taken care separately.
    
    v2: Merged the changes of creating infoframe as well to this
    patch as per Maarten's suggestion.
    
    v3: Addressed review comments from Shashank. Separated HDMI
    and DP colorspaces as suggested by Ville and Maarten.
    
    v4: Addressed Chris and Ville's review comments, and created a
    common colorspace property for DP and HDMI, filtered the list
    based on the colorspaces supported by the respective protocol
    standard. Handle the default case properly.
    
    v5: Merged the DP handling along with platform colorspace
    handling as per Shashank's comments.
    
    v6: Reverted to old design of exposing all colorspaces to
    userspace as per Ville's review comment
    
    v7: Fixed a checkpatch complaint, Addressed  Maarten' review
    comment, updated the RB from Maarten and Jani's ack.
    
    v8: Moved colorspace AVI Infoframe programming to drm core and
    removed from driver as per Ville's suggestion.
    
    v9: Added a check to only allow RGB colorpsaces to be set in
    infoframe though the colorspace property. Since there is no output
    csc property to control planar formats and it will be added later.
    Changes for RGB->YUV conversion inside driver without userspace
    knowledge is still supported. This is as per Ville's suggestion.
    
    v10: Fixed an error in if check.
    
    v11: Dropped the check for planar vs RGB and allow all the colorspaces.
    Onus will be on userspace to pick whatever pipe output it is able to
    drive.
    
    v12: Added Ville's RB.
    Signed-off-by: default avatarUma Shankar <uma.shankar@intel.com>
    Acked-by: default avatarJani Nikula <jani.nikula@intel.com>
    Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
    Reviewed-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/1550596381-993-4-git-send-email-uma.shankar@intel.com
    2f146b78
intel_hdmi.c 73.7 KB