OSDN Git Service

drm/amd/display: Minor refactor of DP PHY test automation
authorGeorge Shen <george.shen@amd.com>
Tue, 4 May 2021 19:31:37 +0000 (15:31 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 20 May 2021 02:38:59 +0000 (22:38 -0400)
[Why]
Improve readability and maintainability of code.

[How]
Refactor test pattern size calculation out of function
call parameter and store value in variable.

Signed-off-by: George Shen <george.shen@amd.com>
Reviewed-by: Wenjing Liu <Wenjing.Liu@amd.com>
Acked-by: Stylon Wang <stylon.wang@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c

index 4a08fe0..74c62cb 100644 (file)
@@ -2755,9 +2755,10 @@ static void dp_test_send_phy_test_pattern(struct dc_link *link)
        union phy_test_pattern dpcd_test_pattern;
        union lane_adjust dpcd_lane_adjustment[2];
        unsigned char dpcd_post_cursor_2_adjustment = 0;
-       unsigned char test_80_bit_pattern[
+       unsigned char test_pattern_buffer[
                        (DP_TEST_80BIT_CUSTOM_PATTERN_79_72 -
                        DP_TEST_80BIT_CUSTOM_PATTERN_7_0)+1] = {0};
+       unsigned int test_pattern_size = 0;
        enum dp_test_pattern test_pattern;
        struct dc_link_training_settings link_settings;
        union lane_adjust dpcd_lane_adjust;
@@ -2827,12 +2828,15 @@ static void dp_test_send_phy_test_pattern(struct dc_link *link)
        break;
        }
 
-       if (test_pattern == DP_TEST_PATTERN_80BIT_CUSTOM)
+       if (test_pattern == DP_TEST_PATTERN_80BIT_CUSTOM) {
+               test_pattern_size = (DP_TEST_80BIT_CUSTOM_PATTERN_79_72 -
+                               DP_TEST_80BIT_CUSTOM_PATTERN_7_0) + 1;
                core_link_read_dpcd(
                                link,
                                DP_TEST_80BIT_CUSTOM_PATTERN_7_0,
-                               test_80_bit_pattern,
-                               sizeof(test_80_bit_pattern));
+                               test_pattern_buffer,
+                               test_pattern_size);
+       }
 
        /* prepare link training settings */
        link_settings.link = link->cur_link_settings;
@@ -2870,9 +2874,8 @@ static void dp_test_send_phy_test_pattern(struct dc_link *link)
                test_pattern,
                DP_TEST_PATTERN_COLOR_SPACE_UNDEFINED,
                &link_training_settings,
-               test_80_bit_pattern,
-               (DP_TEST_80BIT_CUSTOM_PATTERN_79_72 -
-               DP_TEST_80BIT_CUSTOM_PATTERN_7_0)+1);
+               test_pattern_buffer,
+               test_pattern_size);
 }
 
 static void dp_test_send_link_test_pattern(struct dc_link *link)