drm/amd/display: Add interface to adjust DSC max target bpp limit
[Why] For some use cases we need to be able to adjust the maximum target bpp allowed by DSC policy. [How] New interface dc_dsc_policy_set_max_target_bpp_limit Signed-off-by: Joshua Aberback <joshua.aberback@amd.com> Reviewed-by: Nikola Cornij <Nikola.Cornij@amd.com> Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
663bfef0da
commit
6026be6961
@ -77,4 +77,6 @@ bool dc_dsc_compute_config(
|
||||
void dc_dsc_get_policy_for_timing(const struct dc_crtc_timing *timing,
|
||||
struct dc_dsc_policy *policy);
|
||||
|
||||
void dc_dsc_policy_set_max_target_bpp_limit(uint32_t limit);
|
||||
|
||||
#endif
|
||||
|
@ -29,6 +29,9 @@
|
||||
|
||||
/* This module's internal functions */
|
||||
|
||||
/* default DSC policy target bitrate limit is 16bpp */
|
||||
static uint32_t dsc_policy_max_target_bpp_limit = 16;
|
||||
|
||||
static uint32_t dc_dsc_bandwidth_in_kbps_from_timing(
|
||||
const struct dc_crtc_timing *timing)
|
||||
{
|
||||
@ -951,7 +954,12 @@ void dc_dsc_get_policy_for_timing(const struct dc_crtc_timing *timing, struct dc
|
||||
default:
|
||||
return;
|
||||
}
|
||||
/* internal upper limit to 16 bpp */
|
||||
if (policy->max_target_bpp > 16)
|
||||
policy->max_target_bpp = 16;
|
||||
/* internal upper limit, default 16 bpp */
|
||||
if (policy->max_target_bpp > dsc_policy_max_target_bpp_limit)
|
||||
policy->max_target_bpp = dsc_policy_max_target_bpp_limit;
|
||||
}
|
||||
|
||||
void dc_dsc_policy_set_max_target_bpp_limit(uint32_t limit)
|
||||
{
|
||||
dsc_policy_max_target_bpp_limit = limit;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user