drm/i915/dp: abstract rate array length limiting
authorJani Nikula <jani.nikula@intel.com>
Thu, 1 Feb 2018 11:03:41 +0000 (13:03 +0200)
committerJani Nikula <jani.nikula@intel.com>
Fri, 2 Feb 2018 07:50:15 +0000 (09:50 +0200)
This will be useful later on. Also move the functions around to not need
forward declarations in subsequent patches. No functional changes.

Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/40f37f08cad33234cd86337d39e823ac6e55805f.1517482774.git.jani.nikula@intel.com
drivers/gpu/drm/i915/intel_dp.c

index 78cece041ca0f9d1e085d189ebe500c354476bc1..1d4eced394cf0485adee53ef281f600ba79b14c3 100644 (file)
@@ -155,6 +155,28 @@ static void intel_dp_set_sink_rates(struct intel_dp *intel_dp)
        intel_dp->num_sink_rates = i;
 }
 
+/* Get length of rates array potentially limited by max_rate. */
+static int intel_dp_rate_limit_len(const int *rates, int len, int max_rate)
+{
+       int i;
+
+       /* Limit results by potentially reduced max rate */
+       for (i = 0; i < len; i++) {
+               if (rates[len - i - 1] <= max_rate)
+                       return len - i;
+       }
+
+       return 0;
+}
+
+/* Get length of common rates array potentially limited by max_rate. */
+static int intel_dp_common_len_rate_limit(const struct intel_dp *intel_dp,
+                                         int max_rate)
+{
+       return intel_dp_rate_limit_len(intel_dp->common_rates,
+                                      intel_dp->num_common_rates, max_rate);
+}
+
 /* Theoretical max between source and sink */
 static int intel_dp_max_common_rate(struct intel_dp *intel_dp)
 {
@@ -326,22 +348,6 @@ static void intel_dp_set_common_rates(struct intel_dp *intel_dp)
        }
 }
 
-/* get length of common rates potentially limited by max_rate */
-static int intel_dp_common_len_rate_limit(struct intel_dp *intel_dp,
-                                         int max_rate)
-{
-       const int *common_rates = intel_dp->common_rates;
-       int i, common_len = intel_dp->num_common_rates;
-
-       /* Limit results by potentially reduced max rate */
-       for (i = 0; i < common_len; i++) {
-               if (common_rates[common_len - i - 1] <= max_rate)
-                       return common_len - i;
-       }
-
-       return 0;
-}
-
 static bool intel_dp_link_params_valid(struct intel_dp *intel_dp, int link_rate,
                                       uint8_t lane_count)
 {