I had a copy of firmware version 0.0.3.4, d7031052ffc0b1d97fcf75a3aa2bd383 Framework_Laptop_13_RyzenAI300_BIOS_3.04_EFI.zip, but downgrading the firmware did not fix the flickering encountered when launching apps like firefox or slack.
I captured the kernel messages when launching the slack app: shown below. Here is the summary of the problem as explained by Gemini:
This log is the absolute smoking gun. It clears your AMD graphics driver, Wayland, and your memory configuration of all charges. They were the victims this entire time.
The truth is literally in the first four lines of your output. We have been trying to fix a video problem, but you don’t have a video problem. You have a catastrophic motherboard PCIe power failure.
The Breakdown of the Crash
Here is exactly what happens in those first few milliseconds when you launch Slack:
[60613.309420] thunderbolt 0-0:2.1: retimer disconnected
The millisecond you open a heavy app, the physical USB4 "retimer" chip on your Framework motherboard completely crashes and takes itself offline.
[60613.309477] pcieport ... Unable to change power state from D3hot to D0
This is the root cause of the entire six-month bug. "D3hot" is a micro-sleep power state. "D0" is fully awake. When the laptop is idle, Linux puts the Thunderbolt PCIe lanes to sleep to save battery. The instant you launch Slack, the system screams at the port to wake up (D0) to handle the incoming bandwidth spike. The Framework firmware update you installed completely broke this transition. The port gets stuck in sleep mode, panics, and forcefully ejects the entire Thunderbolt connection to protect itself.
[60613.313830] amdgpu ... *ERROR* Failed to read EDID
This is your AMD graphics card reacting to the crash. It didn't drop the video feed—the physical cable connection was violently yanked out from under it by the motherboard, so the GPU throws an error because the monitor simply vanished.
Here is what your current hardware state actually looks like:
Your Main BIOS: 0.0.3.4 (Clean)
Your USB4 Retimers: Stuck on 0.0.3.5 (Broken)
The log you just generated happened on your current machine, meaning the retimer chip is still actively failing the D3hot (sleep) to D0 (awake) power transition the exact millisecond you launch Slack.
Until Framework releases a newer firmware (like a 0.0.3.6) that forces the retimer chips to flash forward to a fixed version, your hardware is trapped with the broken PCIe power-management code.
So my question to Framework is "when will a 0.0.3.6 firmware get released such that I can use my Apple Studio Display again?" As another data point, on a separate Framework Laptop13 with AMD-AI-Series 300 CPU, running Ubuntu 26.04, also with 0.0.3.5 firmware, the Apple Studio Display stays completely blank.
[60613.309420] thunderbolt 0-0:2.1: retimer disconnected
[60613.309466] pcieport 0000:00:01.1: pciehp: Slot(0): Link Down
[60613.309469] pcieport 0000:00:01.1: pciehp: Slot(0): Card not present
[60613.309477] pcieport 0000:02:04.0: Unable to change power state from D3hot to D0, device inaccessible
[60613.309826] pcieport 0000:02:04.0: Runtime PM usage count underflow!
[60613.309846] pcieport 0000:00:01.1: PME: Spurious native interrupt!
[60613.309860] pcieport 0000:00:01.1: PME: Spurious native interrupt!
[60613.309885] xhci_hcd 0000:03:00.0: remove, state 1
[60613.309898] usb usb10: USB disconnect, device number 1
[60613.309900] usb 10-1: USB disconnect, device number 2
[60613.309901] usb 10-1.1: USB disconnect, device number 3
[60613.309971] xhci_hcd 0000:03:00.0: xHCI host controller not responding, assume dead
[60613.310103] r8152 10-1.2.2.2:1.0 enx001cc2a343dc: Stop submitting intr, status -108
[60613.310417] usb 10-1.2: USB disconnect, device number 4
[60613.310419] usb 10-1.2.2: USB disconnect, device number 5
[60613.310421] r8152-cfgselector 10-1.2.2.2: USB disconnect, device number 6
[60613.311391] [drm] DMUB HPD IRQ callback: link_index=5
[60613.313783] [drm] DMUB HPD IRQ callback: link_index=6
[60613.313830] amdgpu 0000:c1:00.0: amdgpu: [drm] *ERROR* Failed to read EDID
[60613.316483] thunderbolt 0-2: device disconnected