Is someone experiencing something similar with Kernel 6.9? When compiling from source (using the config from 6.6.15 from Debian and otherwise setting defaults with make olddefconfig), I get a weird color issue: on USB power and on battery with performance mode activated from Gnome settings, everything looks fine, but when entering balanced - or worse, power saver - mode, everything kinda looks like the Gamma calibration is off or something like that. E.g. where I would see a light green background with white font in my webmailer (less than ideal combination, but usually still very well readable) the contrast seems to lessen within seconds of changing the power profile so the text becomes difficult to read and all in all, everything looks darker.
I’m on Debian Testing with gnome-shell 46.2 from experimental. This doesn’t happen with any older Kernel branches, but consistently happens with 6.9-6.9.3. The question is, where would be the best place to report this issue, so a fix can be upstreamed before Debian catches up to 6.9 and I can report it there - but also since it’s an upstream issue it’s questionable if it’s the right place.
I’ve taken some photos for showcasing, though it might be a bit difficult to judge from them:
Normal view with Performance mode: https://imgur.com/a/2dD0biL
Would cranking the brightness up during situations where this is detrimental be a temporary work around? For me it’s only noticeable
In YouTube videos
On the Framework Community Forums orange banner
All other content is more or less unaffected as far as I can tell.
Obviously I can test if this works empirically, but I’m interested if changing the brightness according to the way the tech works, is supposed to do that. E.g. will the contrast auto-adjust along with the brightness.
Update: A more convenient workaround seems to be just going into performance mode when I want to watch YouTube, which would explain why I don’t have the behavior while plugged in because I have it configured to auto-switch.
At least that doesn’t change anything for me, as not only the brightness decreases, but also contrast - that’s why my guess is, that the gamma curve is being affected by this setting, as that’s typical behavior for that. And sadly not all content - especially web content - is sufficiently high contrast that this wouldn’t matter.
Having a better understanding of how this feature is working has brought me a small, but noticeable, amount of inner peace. Thanks for making the world an incrementally better place by sharing
I have no clue if this is a framework firmware issue or a linux issue or something in-between. But I am having really weird color behavior right now and I was wondering if anyone can reproduce this.
Basically: as soon as the device is running on battery, its color reproduction goes nuts. The device loses some brightness, and I can understand this, but it also loses most color contrast.
Especially dark colors will become really bright, rendering white text on colorful background difficult to read. Sometimes this even makes my own speech bubbles in telegram illegible. When it is really bad, all the colors seem blown-out as if I was taking an over-exposed picture.
But as soon as I plug in a power brick, the dark colors are actually dark again and everything looks fine. Also the display becomes a bit brighter.
I do a lot of color critical work and stuff like this is a bit scary to me … so help would be highly appreciated.
I am also experiencing this but mainly trying to get my power usage down at the moment
I’m on Kubuntu/KDE, kernel 6.9.3
I believe I’ve managed to fix it following this from Mario. The issue is automatic contrast and brightness adjustment, the settings for which dont appear to show up in the KDE settings (though IIRC do show up in the base Ubuntu / gnome settings menu)
In essence, I added amdgpu.abmlevel=0 to my command line parameters to disable it
I double checked the Linux Kernel documentation, and it’s documented as disabled by default. I recall @Mario_Limonciello may have mentioned that this may be changing to enabled in a kernel version (6.8/6.9?). Is this documentation out of date then?
abmlevel (uint)
Override the default ABM (Adaptive Backlight Management) level used for DC enabled hardware. Requires DMCU to be supported and loaded. Valid levels are 0-4. A value of 0 indicates that ABM should be disabled by default. Values 1-4 control the maximum allowable brightness reduction via the ABM algorithm, with 1 being the least reduction and 4 being the most reduction.
Defaults to -1, or disabled. Userspace can only override this level after boot if it’s set to auto.
This doc also appears to indicate that both 0 and -1 represent disabled.
Ah, so -1 is what enables ppd to control it from userspace. PPD can then be configured to ignore it (the now non-default behavior as of I believe version 0.2), hence the systemctl unit configuration option. Alternatively, it abm can be disabled entirely at the kernel level with 0 and it’s no longer a feature for ppd or other userspace applications to even mess with.
Assuming what I said correctly interprets what you said, I have a much better understanding now. Thanks!
I added amdgpu.abmlevel=0 to my grub commandline but the screen still changes color when switching between energy saving and performance mode while running on battery.
Kernel 6.9.1-060901-generic
Exactly what I meant with it looks like the Gamma curve is off in this mode. And I even have set a color profile in Gnome Settings, so all necessary information for accurate color information should be present, but it all just goes nuts. So yeah, as long as this isn’t being done properly, better turn that mode off, it harms more than it helps.