drm/amd/display: rename dsc extended caps as dsc branch decoder caps
authorWenjing Liu <wenjing.liu@amd.com>
Tue, 7 Jul 2020 20:59:31 +0000 (16:59 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 21 Jul 2020 19:37:39 +0000 (15:37 -0400)
[why]
The capability fields are reserved for DSC branch
only to report the capability related to the
branch's DSC decoder.

Signed-off-by: Wenjing Liu <wenjing.liu@amd.com>
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com>
Acked-by: Qingqing Zhuo <qingqing.zhuo@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
drivers/gpu/drm/amd/display/dc/core/dc_link_dp.c
drivers/gpu/drm/amd/display/dc/dc_dp_types.h
drivers/gpu/drm/amd/display/dc/dsc/dc_dsc.c

index 3a50043..99d052f 100644 (file)
@@ -4542,7 +4542,7 @@ create_stream_for_sink(struct amdgpu_dm_connector *aconnector,
 #if defined(CONFIG_DRM_AMD_DC_DCN)
                dc_dsc_parse_dsc_dpcd(aconnector->dc_link->ctx->dc,
                                      aconnector->dc_link->dpcd_caps.dsc_caps.dsc_basic_caps.raw,
-                                     aconnector->dc_link->dpcd_caps.dsc_caps.dsc_ext_caps.raw,
+                                     aconnector->dc_link->dpcd_caps.dsc_caps.dsc_branch_decoder_caps.raw,
                                      &dsc_caps);
 #endif
                link_bandwidth_kbps = dc_link_bandwidth_kbps(aconnector->dc_link,
index af3c4b3..5cb7b83 100644 (file)
@@ -3519,8 +3519,8 @@ static bool retrieve_link_cap(struct dc_link *link)
                status = core_link_read_dpcd(
                                link,
                                DP_DSC_BRANCH_OVERALL_THROUGHPUT_0,
-                               link->dpcd_caps.dsc_caps.dsc_ext_caps.raw,
-                               sizeof(link->dpcd_caps.dsc_caps.dsc_ext_caps.raw));
+                               link->dpcd_caps.dsc_caps.dsc_branch_decoder_caps.raw,
+                               sizeof(link->dpcd_caps.dsc_caps.dsc_branch_decoder_caps.raw));
        }
 
        if (!dpcd_read_sink_ext_caps(link))
index af177c0..a8a3b06 100644 (file)
@@ -726,7 +726,7 @@ union dpcd_dsc_basic_capabilities {
        uint8_t raw[16];
 };
 
-union dpcd_dsc_ext_capabilities {
+union dpcd_dsc_branch_decoder_capabilities {
        struct {
                uint8_t BRANCH_OVERALL_THROUGHPUT_0;
                uint8_t BRANCH_OVERALL_THROUGHPUT_1;
@@ -737,7 +737,7 @@ union dpcd_dsc_ext_capabilities {
 
 struct dpcd_dsc_capabilities {
        union dpcd_dsc_basic_capabilities dsc_basic_caps;
-       union dpcd_dsc_ext_capabilities dsc_ext_caps;
+       union dpcd_dsc_branch_decoder_capabilities dsc_branch_decoder_caps;
 };
 
 /* These parameters are from PSR capabilities reported by Sink DPCD */
index 0c7f247..8cdaa6e 100644 (file)
@@ -747,7 +747,7 @@ done:
        return is_dsc_possible;
 }
 
-bool dc_dsc_parse_dsc_dpcd(const struct dc *dc, const uint8_t *dpcd_dsc_basic_data, const uint8_t *dpcd_dsc_ext_data, struct dsc_dec_dpcd_caps *dsc_sink_caps)
+bool dc_dsc_parse_dsc_dpcd(const struct dc *dc, const uint8_t *dpcd_dsc_basic_data, const uint8_t *dpcd_dsc_branch_decoder_caps, struct dsc_dec_dpcd_caps *dsc_sink_caps)
 {
        if (!dpcd_dsc_basic_data)
                return false;
@@ -818,14 +818,14 @@ bool dc_dsc_parse_dsc_dpcd(const struct dc *dc, const uint8_t *dpcd_dsc_basic_da
        }
 
        /* Extended caps */
-       if (dpcd_dsc_ext_data == NULL) { // Extended DPCD DSC data can be null, e.g. because it doesn't apply to SST
+       if (dpcd_dsc_branch_decoder_caps == NULL) { // branch decoder DPCD DSC data can be null for non branch device
                dsc_sink_caps->branch_overall_throughput_0_mps = 0;
                dsc_sink_caps->branch_overall_throughput_1_mps = 0;
                dsc_sink_caps->branch_max_line_width = 0;
                return true;
        }
 
-       dsc_sink_caps->branch_overall_throughput_0_mps = dpcd_dsc_ext_data[DP_DSC_BRANCH_OVERALL_THROUGHPUT_0 - DP_DSC_BRANCH_OVERALL_THROUGHPUT_0];
+       dsc_sink_caps->branch_overall_throughput_0_mps = dpcd_dsc_branch_decoder_caps[DP_DSC_BRANCH_OVERALL_THROUGHPUT_0 - DP_DSC_BRANCH_OVERALL_THROUGHPUT_0];
        if (dsc_sink_caps->branch_overall_throughput_0_mps == 0)
                dsc_sink_caps->branch_overall_throughput_0_mps = 0;
        else if (dsc_sink_caps->branch_overall_throughput_0_mps == 1)
@@ -835,7 +835,7 @@ bool dc_dsc_parse_dsc_dpcd(const struct dc *dc, const uint8_t *dpcd_dsc_basic_da
                dsc_sink_caps->branch_overall_throughput_0_mps += 600;
        }
 
-       dsc_sink_caps->branch_overall_throughput_1_mps = dpcd_dsc_ext_data[DP_DSC_BRANCH_OVERALL_THROUGHPUT_1 - DP_DSC_BRANCH_OVERALL_THROUGHPUT_0];
+       dsc_sink_caps->branch_overall_throughput_1_mps = dpcd_dsc_branch_decoder_caps[DP_DSC_BRANCH_OVERALL_THROUGHPUT_1 - DP_DSC_BRANCH_OVERALL_THROUGHPUT_0];
        if (dsc_sink_caps->branch_overall_throughput_1_mps == 0)
                dsc_sink_caps->branch_overall_throughput_1_mps = 0;
        else if (dsc_sink_caps->branch_overall_throughput_1_mps == 1)
@@ -845,7 +845,7 @@ bool dc_dsc_parse_dsc_dpcd(const struct dc *dc, const uint8_t *dpcd_dsc_basic_da
                dsc_sink_caps->branch_overall_throughput_1_mps += 600;
        }
 
-       dsc_sink_caps->branch_max_line_width = dpcd_dsc_ext_data[DP_DSC_BRANCH_MAX_LINE_WIDTH - DP_DSC_BRANCH_OVERALL_THROUGHPUT_0] * 320;
+       dsc_sink_caps->branch_max_line_width = dpcd_dsc_branch_decoder_caps[DP_DSC_BRANCH_MAX_LINE_WIDTH - DP_DSC_BRANCH_OVERALL_THROUGHPUT_0] * 320;
        ASSERT(dsc_sink_caps->branch_max_line_width == 0 || dsc_sink_caps->branch_max_line_width >= 5120);
 
        return true;