[solved] Screen very dim with Kernel 6.15.0

Not sure if I’m just imagining things, but I yesterday compiled 6.15 from soources (with an older Debian config from some earlier 6.12 release I kept updating over the various releases in-between that I used). Now I have to turn up the brightness to like 50 % to get decent brightness, while it used to be more than enough to up to like 20-25 %. Also - not sure if it’s simply because I never really had to turn up my screen brightness that high - it also now seems to auto turn down screen brightness within seconds of no interaction, tunring the brightness way too far down. So my guess is it thinks the screen is much brighter than it actually is.

Otherwise I’m on Debian Testing with Gnome 48.

In kernel 6.14 amdgpu, this change was made and this dc debug mask flag can be used to disable this by setting kernel paramater amdgpu.dcdebugmask=0x40000

I didn’t like it at first but got used to it. I ( after some time ) disabled it but then it felt a bit too bright, so I enabled it again ( removing kernel parameter )

and before you make this change, check your kernel logs ( sudo dmesg or journalctl -b -k) to see if it says something like…

amdgpu: [drm] Using custom brightness curve

if it does, that kernel parameter will disable that

I’ll look into this, thanks. But I didn’t have this issue in 6.14.0 or 6.14.4, so this change would have had to be introduced quite late.

change was made during 6.14 rc’s, it’s the only thing I could think of recently relative to FW16 and recent brightness changes

I’ve just checked. I had that line in my Kernel logs, setting the debug mask did help. But this line didn’t show up in the Kernel logs from boots when I was still using 6.14, not even 6.14.8.

PS: I’m not yet sure if I can remove the debugmask 0x410 yet, which prevents severe screen flickers from appearing. I have removed that one for now, but do you happen to know if I can just have both debugmasks in the Kernel command line or if I have to somehow combine them?

dcdebugmask is a bitmap

starting from line 259, you can see a list of flags to set

if you for example you wanted to disable PSR ( 0x10 ) and REPLAY ( 0x400 ) and custom brightness curve ( 0x40000 )

you OR ( 0x10 | 0x400 | 0x40000 ) these together which equals too 0x40410

so now you have all 3 disabled with that hex number

Thanks for the explanation. Let’s see if I have to keep disabling the other two as well

offtopic ====

I’m assuming your referring to the PSR issues, since kernel 6.12 ( in my experience ), they ( AMD ) enabled PR ( Panel Replay ) and amdgpu uses PR over PSR if your panel supports both PSR and PR ( FW16 panel does ). I stopped using PSR since 6.12. I still get a couple of screen flickers but probably less than 10 in a week

====

try

  • 0x40000 - PSR implicitly disabled, PR enabled, Custom brightness disabled
  • 0x40010 - PSR explicitly disabled, PR enabled, Custom brightness disabled ( same as first )
  • 0x40410 - PSR, PR and Custom brightness disabled

I’ll keep my eyes on the situation with only 40000 enabled for the moment, and see how much things have actually improved. The last time I checked, I think with 6.14, it still was more annoying than I’d accept on such an expensive device.

Oddly enough, 0x40400 for now seems to have the best results right now. 0x40000 still shows flickers, so did 0x40010.