diff options
| -rw-r--r-- | drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c | 9 | ||||
| -rw-r--r-- | drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.c | 9 |
2 files changed, 13 insertions, 5 deletions
diff --git a/drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c b/drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c index 3dce35e66b09..b142629a1058 100644 --- a/drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c +++ b/drivers/gpu/drm/amd/display/dc/calcs/dcn_calcs.c | |||
| @@ -900,6 +900,15 @@ bool dcn_validate_bandwidth( | |||
| 900 | v->override_vta_ps[input_idx] = pipe->plane_res.scl_data.taps.v_taps; | 900 | v->override_vta_ps[input_idx] = pipe->plane_res.scl_data.taps.v_taps; |
| 901 | v->override_hta_pschroma[input_idx] = pipe->plane_res.scl_data.taps.h_taps_c; | 901 | v->override_hta_pschroma[input_idx] = pipe->plane_res.scl_data.taps.h_taps_c; |
| 902 | v->override_vta_pschroma[input_idx] = pipe->plane_res.scl_data.taps.v_taps_c; | 902 | v->override_vta_pschroma[input_idx] = pipe->plane_res.scl_data.taps.v_taps_c; |
| 903 | /* | ||
| 904 | * Spreadsheet doesn't handle taps_c is one properly, | ||
| 905 | * need to force Chroma to always be scaled to pass | ||
| 906 | * bandwidth validation. | ||
| 907 | */ | ||
| 908 | if (v->override_hta_pschroma[input_idx] == 1) | ||
| 909 | v->override_hta_pschroma[input_idx] = 2; | ||
| 910 | if (v->override_vta_pschroma[input_idx] == 1) | ||
| 911 | v->override_vta_pschroma[input_idx] = 2; | ||
| 903 | v->source_scan[input_idx] = (pipe->plane_state->rotation % 2) ? dcn_bw_vert : dcn_bw_hor; | 912 | v->source_scan[input_idx] = (pipe->plane_state->rotation % 2) ? dcn_bw_vert : dcn_bw_hor; |
| 904 | } | 913 | } |
| 905 | if (v->is_line_buffer_bpp_fixed == dcn_bw_yes) | 914 | if (v->is_line_buffer_bpp_fixed == dcn_bw_yes) |
diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.c index 74e7c82bdc76..a9d55d0dd69e 100644 --- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.c +++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.c | |||
| @@ -159,11 +159,10 @@ bool dpp_get_optimal_number_of_taps( | |||
| 159 | scl_data->taps.h_taps = 1; | 159 | scl_data->taps.h_taps = 1; |
| 160 | if (IDENTITY_RATIO(scl_data->ratios.vert)) | 160 | if (IDENTITY_RATIO(scl_data->ratios.vert)) |
| 161 | scl_data->taps.v_taps = 1; | 161 | scl_data->taps.v_taps = 1; |
| 162 | /* | 162 | if (IDENTITY_RATIO(scl_data->ratios.horz_c)) |
| 163 | * Spreadsheet doesn't handle taps_c is one properly, | 163 | scl_data->taps.h_taps_c = 1; |
| 164 | * need to force Chroma to always be scaled to pass | 164 | if (IDENTITY_RATIO(scl_data->ratios.vert_c)) |
| 165 | * bandwidth validation. | 165 | scl_data->taps.v_taps_c = 1; |
| 166 | */ | ||
| 167 | } | 166 | } |
| 168 | 167 | ||
| 169 | return true; | 168 | return true; |
