drm/amd/display: optimize code runtime a bit
authorBernard Zhao <bernard@vivo.com>
Thu, 10 Sep 2020 02:05:04 +0000 (19:05 -0700)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 15 Sep 2020 21:52:43 +0000 (17:52 -0400)
In fnction is_cr_done & is_ch_eq_done, when done = false
happened once, no need to circle left ln_count.
This change is to make the code run a bit fast.

Signed-off-by: Bernard Zhao <bernard@vivo.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c

index 47fb09f..b9b66db 100644 (file)
@@ -380,34 +380,30 @@ static void dpcd_set_lt_pattern_and_lane_settings(
 static bool is_cr_done(enum dc_lane_count ln_count,
        union lane_status *dpcd_lane_status)
 {
-       bool done = true;
        uint32_t lane;
        /*LANEx_CR_DONE bits All 1's?*/
        for (lane = 0; lane < (uint32_t)(ln_count); lane++) {
                if (!dpcd_lane_status[lane].bits.CR_DONE_0)
-                       done = false;
+                       return false;
        }
-       return done;
-
+       return true;
 }
 
 static bool is_ch_eq_done(enum dc_lane_count ln_count,
        union lane_status *dpcd_lane_status,
        union lane_align_status_updated *lane_status_updated)
 {
-       bool done = true;
        uint32_t lane;
        if (!lane_status_updated->bits.INTERLANE_ALIGN_DONE)
-               done = false;
+               return false;
        else {
                for (lane = 0; lane < (uint32_t)(ln_count); lane++) {
                        if (!dpcd_lane_status[lane].bits.SYMBOL_LOCKED_0 ||
                                !dpcd_lane_status[lane].bits.CHANNEL_EQ_DONE_0)
-                               done = false;
+                               return false;
                }
        }
-       return done;
-
+       return true;
 }
 
 static void update_drive_settings(