[RESPONDED] Backlight Control & Suspen not functioning on Ryzen in Gnome

Hi,

I’m running Debian 12 Bookworm with Gnome as my desktop on a Framework 13 Ryzen 7640U (32GB RAM) and it seems to be working fine excepting backlight controls (missing in the Gnome UI and keyboard controls not working, plus an empty /sys/class/backlight folder) & closing the lid does not trigger suspend.

Has anyone else run into this?

I did install kernel 6.4 from backports (sudo apt install -t bookworm-backports linux-image-amd64) and WiFi firmware from kernel.org.

Backlight control works now, woo!

Suspend is not quite working yet, resuming from suspend results in a black screen.

The firmware-amd-graphics I had was from 2021 due to /etc/apt/sources.list not including non-free-firmware (which split off in Bookworm) thus the firmware was not updated. I also grabbed gc_11_0_1_mes_2.bin and placed it in /lib/firmware/amdgpu as dmesg was complaining about this potential missing firmware, though I have not seen a functional difference with this firmware installed.

Tangentially, the trackpad not having a physical right click or middle click button was frustrating, but Gnome Tweak Tool has a setting to help mitigate this as well.

Welcome to the community!

Delighted to hear you have your backlighting working. We do not test against Debian as we laser focus on Ubuntu 22.04 LTS and Fedora 39 for Ryzen. There are additions provided in the Ubuntu LTS OEM C kernel and of course, being a brand new board, we recommend Fedora outside of that.

For non Ubuntu OEM C kernel (specially done 6.1), we recommend 6.5+ for anything not in that space.

Ah, I have had a rough time with Ubuntu upgrades breaking in the past, so I avoid using FrankenDebian distros like Ubuntu (at work I treat said FrakenDebian distros like an unstable appliance that needs full re-installation every time).

Is Fedora a healthy distro at this point? My last attempt to use Fedora (in the pre-IBM era), the official install media released was broken, and I was told that their policy is not to update said media post-version release even if it fails to boot, which scared me off since I don’t wanna run an OS where the developers don’t have established processes nor motivation to publish and update the primary gateway to using said distro.

Yesterday I upgraded to the latest kernel offered in Debian Trixie (6.5.0-3-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.5.8-1 (2023-10-22) x86_64 GNU/Linux) from kernel 6.4, though this seems to have some kind of metering where the brightness of the screen auto-adjusts sometimes (need to figure out how to toggle this off, and resuming from suspend shows me an empty grey screen with a playing card sized box where my cursor is (no ability to switch to a different TTY tho, despite being able to move said box cursor around).

I also much prefer plain debian stable, having struggled with trimming/taming ubuntu a lot between 10 and 20 years ago … but I didn’t even try debian stable on my brand new FW13 Ryzen, it’s such a brand new platform. It’s normal for the linux ecosystem to take a while (many months …) for stable distros to add support everywhere. There’s the kernel, but also mesa, upower, gnome-power-manager, power-profiles-daemon, libinput, fwupd, etc.

I started with the recommended ubuntu-22.04 setup (with kernel package “linux-oem-c”), then after the 3.03 bios release, considered my options … I’ve heard a couple reports of people using debian sid, and I also considered ubuntu-23.10 (should be an easy upgrade to 24.04 lts) … but I ended up going with Arch - rolling like Sid, but even more minimal and faster to update. I used it a lot until a few years ago. It does get annoying after a while. I’ll probably switch back to debian when trixie is promoted to stable in a year or two.

Regarding screen brightness auto-adjust, I think I saw an option for that in gnome-power-manager, and it’s probably in some others (but I’m currently using a Cinnamon power manager which doesn’t have that option). I think the brightness sensor is tracked by “iio-sensor-proxy”, there’s a terminal command “monitor-sensor” that can show the data it collects … I hope that helps

2 Likes

Good catch @pierce , Automatic Screen Brightness in settings under power does the trick!

1 Like

Sounds like you have a solution to the brightness issue, am I safe in assuming systemctl suspend is working for you? As this is not a distro we support officially (kernel, etc), this may be your best path forward.

Using systemctl suspend does not work for me on the current Debian Trixie (6.5.0-3-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.5.8-1 (2023-10-22) x86_64 GNU/Linux) kernel or the 6.4 Bookworm Backports kernel or the 6.1 Debian Bookworm kernel, when coming out of suspend I just get a black screen.

I updated to the new 3.03 UEFI yesterday, and this seems to have caused part of the screen to flash white at random, though it looks like this might be a known issue with available mitigations.

I have been reading that a number of Debian users have had issues with suspend on the AMD Ryzen 7040 Series. Tests well on default behavior on Ubuntu 22.04.3 using the OEM C kernel and on Fedora 39, though.

Might be worth posting here in case other community members have found a solution.
[GUIDE] Debian 12 (Bookworm) Works Great on 13th Gen (Intel) Framework 13 (while it’s marked as Intel, it’s likely going to see a shift in coming weeks as more AMD boards land.)

Suspend not working appears to be a firmware issue with Debian’s firmware-amd-graphics package on version 20230210-5, replacing this with upstream’s firmware resolves the issue entirely.

Mitigation
Download the amdgpu folder from firmware-main here, then remove all files from /usr/lib/firmware/amdgpu/ and replace it with the updated firmware files from inside the archive’s firmware-main-amdgpu/amdgpu/ folder.

I got the idea to investigate this from @Mario_Limonciello 's bug here, then running the script he suggested here) helped me reproduce the issue with logs and test the replacement firmware. Thanks for the guidance @Mario_Limonciello , I really appreciate it!

5 Likes

Download the amdgpu folder from firmware-main, then remove all files from /usr/lib/firmware/amdgpu/ and replace it with the updated firmware files from inside the archive’s firmware-main-amdgpu/amdgpu/ folder.

This worked great! I do have a rare issue where the it will kind of half-wake-up and the entire system will lag for tens of seconds at a time, and it will hang when restarting because it’s waiting for amdgpu to shut down (at least I think so, not an expert). I’m just glad that I can actually close my laptop and open it again without a restart in the middle.

This is outstanding! :slight_smile: