I’m a new owner of a Framework 13 with the AMD Ryzen AI 370 mainboard and I’ve been running into an intermittent suspend/resume issue. I wanted to post here to see if others are experiencing similar problems and to centralise the discussion for the Framework team.
The issue is a delayed resume from suspend-to-RAM. When I wake the laptop, the display stays off for about 5-10 minutes before the system finally becomes responsive. Once it’s back up, the Wi-Fi card is completely disabled. This behavior is inconsistent and has no obvious trigger.
We’ve done some troubleshooting and found some critical errors in dmesg that point to a power management failure with the Wi-Fi card (an Intel AX210) and the kernel.
Key Error Messages:
Unable to change power state from d3cold to d0 device inaccessible
failed to start rt ucode -110 for iwlwifi
I’ve filed a bug report on Fedora’s Bugzilla, which includes my kernel version (6.14.11-300.fc42.x86_64), BIOS (3.0.4), and a list of the diagnostic steps and error messages.
Sounds very much like the issue I had with the Intel AX210 that was solved with Kernel 6.16: dmesg
So probably, the issue is already fixed.
The only remaining issue for me with the laptop is a lock-up on resume, happening about 1 out of 30 resumes. In that case, there is absolutely nothing in `journalctl` so I believe it has nothing to do with the Wifi adapter.
OK it’s great that this is fixed in 6.16, because it’s happening a lot at the moment and is driving me crazy.
Since I’m on Bluefin Stable though, I have to wait for October for the fix. Unless I switch to the Latest image, which I am loathe to do on my production machine.
Gemini recommends I add these kernel params, but I am little scared to do that, as I’ve not tried it before:
I’ve just tried those Kernel parameters with Kernel 6.15 and did not notice anything unusual, and a couple of standby - resume cycles went perfectly fine.
So I suggest there is no risk and it is certainly worth trying. This answer from DuckDuckGo to temporarily set the parameters looks good to me:
To edit kernel parameters in Linux using GRUB, reboot your system and hold the Shift key to access the GRUB menu. Highlight the desired kernel, press ‘e’ to edit, modify the parameters on the line starting with “linux”, and then press Ctrl + X to boot with the new settings.
The AX210 may have some hardware incompatibility with the AMD Strix Point platform regarding the low power modes. Sadly, for notebooks it seems there not much around the official compatibility of processors and WiFi cards, as it seems manufacturers do not currently care to test with the competitions cards.
So its possible that any workarounds Linux may offer may just disable the power saving on that Intel card to prevent the bug, similar to what Windows does and warns about.
OK thanks, I swapped out and sold the Mediatek card because it seemed to have almost no range at all, but I am wondering now if perhaps one of the connectors was loose, because I don’t think it can have been that bad by design.
The kernel parameters I’ve applied should force S3 mode for the laptop generally and disable power saving on the AX210.
I don’t think the WiFi card will have power during suspend in S3 mode, so the main issue is likely to be using the laptop on battery, but I have no idea how much impact disabling the AX210 power saving ability will have on battery life, which is already quite poor atm (3 - 4 hours).
S3 is not supported by AMD or Framework so who knows what happens in that case.
I know the Intel 12th gen board, that still had leftovers from Intels working S3 implementation for desktop platforms left the WiFi port powered, because with Modern Standby there is no need to do anything else.
My impact was exclusively to sleep consumption. Awake it made no discernable difference. So that one I would not worry that much about.
Just an update for anyone following this, or who stumbles upon it.
I’ve not had any resume issues since applying the above kernel params. Suspend and unsuspend has been working normally. I’ve not noticed crazy battery drain either by disabling the iwlwifi power_save mode.
I’ll likely keep these params in place until I get the next major update to Bluefin in October / November and try removing them, especially: