]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
drm/i915/dp: Move max. vswing check to it's own function
authorDhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Wed, 7 Sep 2016 18:28:00 +0000 (11:28 -0700)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Fri, 9 Sep 2016 21:53:18 +0000 (14:53 -0700)
Wrap the max. vswing check in a separate function.
This makes the clock recovery phase of DP link training cleaner

v3:
Fixed the paranthesis warning (Mika Kahola)
v2:
Fixed the Compiler warning (Mika Kahola)

Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Signed-off-by: Manasi Navare <manasi.d.navare@intel.com>
Reviewed-by: Mika Kahola <mika.kahola@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/i915/intel_dp_link_training.c

index 0deebed71a26d824ebf8c5770b28e704f38bed1c..b9880cf0ae6c7bdd93e4f2e252fc61c9c5eb9824 100644 (file)
@@ -112,6 +112,18 @@ intel_dp_update_link_train(struct intel_dp *intel_dp)
        return ret == intel_dp->lane_count;
 }
 
+static bool intel_dp_link_max_vswing_reached(struct intel_dp *intel_dp)
+{
+       int lane;
+
+       for (lane = 0; lane < intel_dp->lane_count; lane++)
+               if ((intel_dp->train_set[lane] &
+                    DP_TRAIN_MAX_SWING_REACHED) == 0)
+                       return false;
+
+       return true;
+}
+
 /* Enable corresponding port and start training pattern 1 */
 static void
 intel_dp_link_training_clock_recovery(struct intel_dp *intel_dp)
@@ -170,10 +182,7 @@ intel_dp_link_training_clock_recovery(struct intel_dp *intel_dp)
                }
 
                /* Check to see if we've tried the max voltage */
-               for (i = 0; i < intel_dp->lane_count; i++)
-                       if ((intel_dp->train_set[i] & DP_TRAIN_MAX_SWING_REACHED) == 0)
-                               break;
-               if (i == intel_dp->lane_count) {
+               if (intel_dp_link_max_vswing_reached(intel_dp)) {
                        ++loop_tries;
                        if (loop_tries == 5) {
                                DRM_ERROR("too many full retries, give up\n");