From: Ray Wu <ray.wu@amd.com>
To: Matthew Schwartz <matthew.schwartz@linux.dev>,
"Wentland, Harry" <Harry.Wentland@amd.com>,
"Li, Sun peng (Leo)" <Sunpeng.Li@amd.com>,
"Deucher, Alexander" <Alexander.Deucher@amd.com>
Cc: "Limonciello, Mario" <Mario.Limonciello@amd.com>,
"amd-gfx@lists.freedesktop.org" <amd-gfx@lists.freedesktop.org>,
"dri-devel@lists.freedesktop.org"
<dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH RESEND 1/2] drm/amd/display: Use linear backlight curve in power module
Date: Tue, 29 Sep 2026 09:35:01 +0800 [thread overview]
Message-ID: <392ba6d1-1ff8-4ba0-8b71-d794336cf4e9@amd.com> (raw)
In-Reply-To: <20260916191102.1195881-1-matthew.schwartz@linux.dev>
Hi Mathew,
We have a similar change has already been merged into asdn DC 3.2.400
release.
commit: drm/amd/display: map PWM brightness through custom
backlight curve
Could you give it a try? If you still see any other issues, please feel
free to send an updated patch.
Thanks!
On 9/17/2026 3:11 AM, Matthew Schwartz wrote:
> amdgpu_dm already applies the ATIF custom brightness curve in
> convert_custom_brightness() before handing the level to the power
> module. The power module then builds its own percent to PWM LUT from
> the same ATIF data in initialize_backlight_caps() and applies the curve
> a second time. On the Lenovo Legion Go S this maps the bottom 40% of the
> brightness range to under 12% PWM, where the panel no longer visibly
> changes.
>
> Tell the power module to use its linear curve so the PWM is a straight
> rescale of the level DM computed, matching the behavior before the power
> module took over backlight programming.
>
> Fixes: 3c108046e1d6 ("drm/amd/display: Add power module on Linux")
> Signed-off-by: Matthew Schwartz <matthew.schwartz@linux.dev>
> ---
> drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index ca795cda8084..63acefc0acfb 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -455,7 +455,7 @@ STATIC_IFN_KUNIT int amdgpu_dm_init_power_module(struct amdgpu_display_manager *
> !(amdgpu_dc_feature_mask & DC_DISABLE_FRACTIONAL_PWM_MASK);
> init_data[i].use_custom_backlight_caps = false;
> init_data[i].custom_backlight_caps_config_no = 0;
> - init_data[i].use_linear_backlight_curve = false;
> + init_data[i].use_linear_backlight_curve = true;
> init_data[i].def_varibright_enable = 0;
> init_data[i].varibright_level = 0;
> /*
prev parent reply other threads:[~2026-09-29 1:35 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-16 19:11 [PATCH RESEND 1/2] drm/amd/display: Use linear backlight curve in power module Matthew Schwartz
2026-09-16 19:11 ` [PATCH RESEND 2/2] drm/amd/display: Keep backlight precision in millipercent Matthew Schwartz
2026-09-29 1:37 ` Ray Wu
2026-09-29 1:35 ` Ray Wu [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=392ba6d1-1ff8-4ba0-8b71-d794336cf4e9@amd.com \
--to=ray.wu@amd.com \
--cc=Alexander.Deucher@amd.com \
--cc=Harry.Wentland@amd.com \
--cc=Mario.Limonciello@amd.com \
--cc=Sunpeng.Li@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=matthew.schwartz@linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.