stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Mario Limonciello <superm1@kernel.org>
To: Lauri Tirkkonen <lauri@hacktheplanet.fi>
Cc: stable@vger.kernel.org, regressions@lists.linux.dev,
	amd-gfx@lists.freedesktop.org, Wayne Lin <wayne.lin@amd.com>,
	Alex Deucher <alexander.deucher@amd.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Subject: Re: [REGRESSION] drm/amd/display: backlight brightness set to 0 at amdgpu initialization
Date: Sat, 19 Jul 2025 12:39:45 -0500	[thread overview]
Message-ID: <cc7a41dc-066a-41c8-a271-7e4c92088d65@kernel.org> (raw)
In-Reply-To: <f12cfe85-3597-4cf7-9236-3e00f16c3c38@kernel.org>



On 7/19/25 10:25 AM, Mario Limonciello wrote:
> 
> 
> On 7/18/25 9:12 PM, Lauri Tirkkonen wrote:
>> On Fri, Jul 18 2025 20:14:08 -0500, Mario Limonciello wrote:
>>> OK, I think we need to do two things to figure out what's going on.
>>>
>>> 1) Let's shift over to 6.16-rc6.  Once we've got a handle on the 
>>> situation
>>> there we can iron out if there are other patches missing or this is also
>>> broken for you in 6.16.  If it's not working as expected there either we
>>> need it fixed there first anyway.
>>
>> Same behavior on 6.16-rc6: brightness is set to 0 (max 399000),
>> minimally visible.
>>
>>> 2) The starting brightness I don't expect to be "0".  We need to see 
>>> what
>>> values were read out from the firmware. There is a debugging message 
>>> we can
>>> catch if you boot with drm.debug=0x106.  Keep in mind you probably 
>>> need to
>>> increase log_buf_len if your ring buffer is set too small too.
>>>
>>> https://github.com/torvalds/linux/ 
>>> commit/4b61b8a390511a1864f26cc42bab72881e93468d
>>>
>>> PS: I would rather you add logs into a gist, pastebin or a bug 
>>> somewhere if
>>> you can.
>>
>> [    3.210757] amdgpu 0000:03:00.0: 
>> [drm:amdgpu_dm_connector_late_register [amdgpu]] Backlight caps: min: 
>> 1000, max: 400000, ac 100, dc 32
>>
>> full dmesg: https://termbin.com/o2q3
>>
> 
> Thanks for sharing.  Can you get me an updated output with 
> drm.debug=0x106 set and with this applied?  I want to see what values 
> were set.
> 
> 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 5df7f8c34231..cdc43cfb39dd 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -10489,8 +10489,12 @@ static void amdgpu_dm_atomic_commit_tail(struct 
> drm_atomic_state *state)
>          /* restore the backlight level */
>          for (i = 0; i < dm->num_of_edps; i++) {
>                  if (dm->backlight_dev[i] &&
> -                   (dm->actual_brightness[i] != dm->brightness[i]))
> +                   (dm->actual_brightness[i] != dm->brightness[i])) {
> +                       drm_WARN(adev_to_drm(adev), true,
> +                                       "Backlight level %d does not 
> match actual brightness %d for edp %d\n",
> +                                       dm->brightness[i], dm- 
>  >actual_brightness[i], i);
>                          amdgpu_dm_backlight_set_level(dm, i, dm- 
>  >brightness[i]);
> +                   }
>          }
> 
>          /*
> 
> Also, does turning off custom brightness curves 
> (amdgpu.dcdebugmask=0x40000) help?
> 

In advance of getting that updated log; I have a theory what's going on. 
  I think the first value programmed to brightness happens as part of 
that very first modeset.

If that's what's going on, then I think doing an explicit programming 
cycle at the backlight registration will help.  Here's a potential patch.

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 b19e7964060d..4b99efbaf481 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -4996,6 +4996,8 @@ amdgpu_dm_register_backlight_device(struct 
amdgpu_dm_connector *aconnector)
                 dm->backlight_dev[aconnector->bl_idx] = NULL;
         } else
                 drm_dbg_driver(drm, "DM: Registered Backlight device: 
%s\n", bl_name);
+
+ 
amdgpu_dm_backlight_update_status(dm->backlight_dev[aconnector->bl_idx]);
  }

  static int initialize_plane(struct amdgpu_display_manager *dm,

  reply	other threads:[~2025-07-19 17:39 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-18  7:29 [REGRESSION] drm/amd/display: backlight brightness set to 0 at amdgpu initialization Lauri Tirkkonen
2025-07-18 13:10 ` Mario Limonciello
2025-07-18 14:36   ` Lauri Tirkkonen
2025-07-18 17:13     ` Mario Limonciello
2025-07-19  1:03       ` Lauri Tirkkonen
2025-07-19  1:14         ` Mario Limonciello
2025-07-19  2:12           ` Lauri Tirkkonen
2025-07-19 15:25             ` Mario Limonciello
2025-07-19 17:39               ` Mario Limonciello [this message]
2025-07-20  9:34                 ` Lauri Tirkkonen
2025-07-20  9:36                   ` [REGRESSION] [PATCH] drm/amd/display: fix initial backlight brightness calculation Lauri Tirkkonen
2025-07-20 10:26                     ` Greg Kroah-Hartman
2025-07-21  0:51                       ` Lauri Tirkkonen
2025-07-20 12:49                     ` Mario Limonciello

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=cc7a41dc-066a-41c8-a271-7e4c92088d65@kernel.org \
    --to=superm1@kernel.org \
    --cc=alexander.deucher@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=lauri@hacktheplanet.fi \
    --cc=regressions@lists.linux.dev \
    --cc=stable@vger.kernel.org \
    --cc=wayne.lin@amd.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).