Message ID | 20200825173349.24580-1-kai.heng.feng@canonical.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/radeon: Prefer lower feedback dividers | expand |
Am 25.08.20 um 19:33 schrieb Kai-Heng Feng: > Commit 2e26ccb119bd ("drm/radeon: prefer lower reference dividers") > fixed screen flicker for HP Compaq nx9420 but breaks other laptops like > Asus X50SL. > > Turns out we also need to favor lower feedback dividers. Mhm, let's hope that this works out for all others as well :) > > Users confirmed this change fixes the regression and doesn't regress the > original fix. > > Fixes: 2e26ccb119bd ("drm/radeon: prefer lower reference dividers") > BugLink: https://bugs.launchpad.net/bugs/1791312 > BugLink: https://bugs.launchpad.net/bugs/1861554 > Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> Reviewed-by: Christian König <christian.koenig@amd.com> > --- > drivers/gpu/drm/radeon/radeon_display.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c > index e0ae911ef427..7b69d6dfe44a 100644 > --- a/drivers/gpu/drm/radeon/radeon_display.c > +++ b/drivers/gpu/drm/radeon/radeon_display.c > @@ -933,7 +933,7 @@ static void avivo_get_fb_ref_div(unsigned nom, unsigned den, unsigned post_div, > > /* get matching reference and feedback divider */ > *ref_div = min(max(den/post_div, 1u), ref_div_max); > - *fb_div = DIV_ROUND_CLOSEST(nom * *ref_div * post_div, den); > + *fb_div = max(nom * *ref_div * post_div / den, 1u); > > /* limit fb divider to its maximum */ > if (*fb_div > fb_div_max) {
Applied. Thanks! Alex On Thu, Aug 27, 2020 at 7:18 AM Christian König <christian.koenig@amd.com> wrote: > > Am 25.08.20 um 19:33 schrieb Kai-Heng Feng: > > Commit 2e26ccb119bd ("drm/radeon: prefer lower reference dividers") > > fixed screen flicker for HP Compaq nx9420 but breaks other laptops like > > Asus X50SL. > > > > Turns out we also need to favor lower feedback dividers. > > Mhm, let's hope that this works out for all others as well :) > > > > > Users confirmed this change fixes the regression and doesn't regress the > > original fix. > > > > Fixes: 2e26ccb119bd ("drm/radeon: prefer lower reference dividers") > > BugLink: https://bugs.launchpad.net/bugs/1791312 > > BugLink: https://bugs.launchpad.net/bugs/1861554 > > Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> > > Reviewed-by: Christian König <christian.koenig@amd.com> > > > --- > > drivers/gpu/drm/radeon/radeon_display.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c > > index e0ae911ef427..7b69d6dfe44a 100644 > > --- a/drivers/gpu/drm/radeon/radeon_display.c > > +++ b/drivers/gpu/drm/radeon/radeon_display.c > > @@ -933,7 +933,7 @@ static void avivo_get_fb_ref_div(unsigned nom, unsigned den, unsigned post_div, > > > > /* get matching reference and feedback divider */ > > *ref_div = min(max(den/post_div, 1u), ref_div_max); > > - *fb_div = DIV_ROUND_CLOSEST(nom * *ref_div * post_div, den); > > + *fb_div = max(nom * *ref_div * post_div / den, 1u); > > > > /* limit fb divider to its maximum */ > > if (*fb_div > fb_div_max) { > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel
diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c index e0ae911ef427..7b69d6dfe44a 100644 --- a/drivers/gpu/drm/radeon/radeon_display.c +++ b/drivers/gpu/drm/radeon/radeon_display.c @@ -933,7 +933,7 @@ static void avivo_get_fb_ref_div(unsigned nom, unsigned den, unsigned post_div, /* get matching reference and feedback divider */ *ref_div = min(max(den/post_div, 1u), ref_div_max); - *fb_div = DIV_ROUND_CLOSEST(nom * *ref_div * post_div, den); + *fb_div = max(nom * *ref_div * post_div / den, 1u); /* limit fb divider to its maximum */ if (*fb_div > fb_div_max) {
Commit 2e26ccb119bd ("drm/radeon: prefer lower reference dividers") fixed screen flicker for HP Compaq nx9420 but breaks other laptops like Asus X50SL. Turns out we also need to favor lower feedback dividers. Users confirmed this change fixes the regression and doesn't regress the original fix. Fixes: 2e26ccb119bd ("drm/radeon: prefer lower reference dividers") BugLink: https://bugs.launchpad.net/bugs/1791312 BugLink: https://bugs.launchpad.net/bugs/1861554 Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> --- drivers/gpu/drm/radeon/radeon_display.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)