drm/dp: Add drm_dp_128b132b_supported()
authorImre Deak <imre.deak@intel.com>
Wed, 17 Apr 2024 14:19:35 +0000 (17:19 +0300)
committerImre Deak <imre.deak@intel.com>
Fri, 19 Apr 2024 14:20:53 +0000 (17:20 +0300)
Factor out a function to check for 128b/132b channel coding support used
by a follow-up patch in the patchset.

v2: s/drm_dp_uhbr_channel_coding_supported()/drm_dp128b132b_supported()
    (Jani)

Cc: dri-devel@lists.freedesktop.org
Cc: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Reviewed-by: Manasi Navare <navaremanasi@chromium.org>
Acked-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240417141936.457796-1-imre.deak@intel.com
drivers/gpu/drm/i915/display/intel_dp.c
include/drm/display/drm_dp_helper.h

index 23808e9d41d5d4910380cd77b0f3fbbf1cc96072..e05e25cd4a9400f915131f05d31b43b41330e357 100644 (file)
@@ -225,7 +225,7 @@ static void intel_dp_set_dpcd_sink_rates(struct intel_dp *intel_dp)
         * Sink rates for 128b/132b. If set, sink should support all 8b/10b
         * rates and 10 Gbps.
         */
-       if (intel_dp->dpcd[DP_MAIN_LINK_CHANNEL_CODING] & DP_CAP_ANSI_128B132B) {
+       if (drm_dp_128b132b_supported(intel_dp->dpcd)) {
                u8 uhbr_rates = 0;
 
                BUILD_BUG_ON(ARRAY_SIZE(intel_dp->sink_rates) < ARRAY_SIZE(dp_rates) + 3);
index 10147ae96326ddd745a83c63271b339ecc4b7154..8c6ccad0bfea13099573605faaae014725faa624 100644 (file)
@@ -251,6 +251,12 @@ drm_dp_channel_coding_supported(const u8 dpcd[DP_RECEIVER_CAP_SIZE])
        return dpcd[DP_MAIN_LINK_CHANNEL_CODING] & DP_CAP_ANSI_8B10B;
 }
 
+static inline bool
+drm_dp_128b132b_supported(const u8 dpcd[DP_RECEIVER_CAP_SIZE])
+{
+       return dpcd[DP_MAIN_LINK_CHANNEL_CODING] & DP_CAP_ANSI_128B132B;
+}
+
 static inline bool
 drm_dp_alternate_scrambler_reset_cap(const u8 dpcd[DP_RECEIVER_CAP_SIZE])
 {