Framework Laptop 13 Ryzen 7040 BIOS 3.05 Release and Driver Bundle

Installed the new BIOS and the driver bundle under Windows 11 on my 7840U FW13, and now the internal display turns off at the login screen. The splash boot screen displays fine, then it goes blank, and then a few seconds later the backlight turns off.

I’m able to connect external displays and use the machine, but the laptop display remains dark (no backlight on) and even though Windows detects the internal display (as “Integrated Monitor”) in Device Manager, it does not appear as an available display for extension or mirroring in Display settings.

troubleshooting steps taken:

  • reset BIOS to defaults
  • rolled back graphics driver
  • rolled back chipset driver
  • manually installed monitor .inf driver from the driver pack (and then rolled it back when nothing changed)

This is clearly a windows/driver issue, as the display works fine in while booting, when in safe mode, and when booted from a live linux USB disk.

Please help!

EDIT: rolling back the display driver fixes the issue. I have opened a support ticket and will post the outcome of that here.

EDIT 2: Running DDU and reinstalling the new driver from scratch has fixed the problem. Thank you Zeke and the other support staff!

I installed the update with the EFI updater. I’m running Arch Linux with kernel 6.8.2.

No problems so far, dmesg looks good.

But, the first boot-up after the efi update, only 512MB ram was reserved for the iGPU, even though I had configured UMA_GAME mode in the bios. Hmm did it reset? Checking the bios config, no, it was correctly configured there, as were the all the rest of my changes. I did notice that the name and help text for this option were greatly improved! It’s now called “iGPU memory” and explains how much is assigned in “auto” vs “game” mode, depending on total memory installed. Nice. So … I toggled it to auto, and back to game, saved and booted, and now it’s allocated 4GB as expected out of my 32GB total. So was it a first boot problem, and a plain reboot would have fixed it, or did toggling and re-saving the setting fix it? I’m not sure …

Update worked for me after trying it with two old pendrives that failed.
I used the microSD expansion card and a fresh microSD instead.

It took about 15 minutes and required mains connected.

I’m in for the Beta especially because of the new password regulations.

And it works like a charm! Thanks!

also successfully updated bios with efi
Game mode is set for iGPU and now the available ram is 29 GB. I am curious since it isn’t quite the 4GB the bios claims to allocate out of my 32…

I got 27.2GiB(read from btop)RAM and 4005M VRAM(read from radeontop), where did you read 29GB

1 Like

I use Pop!_OS, there’s a built-in “system monitor”

edit:
top gives me MiB mem: 27868.7 total.

Think of Z States a bit like Intel C States. They are particular modes a processor can drop down into that disable features not necessary at a certain time for power management.

Please take anything below this with a grain of salt as my understanding is very far from good.

AMD 6000 series and up (as of writing this 06/04/2024) have two Z states:

  • Z10, which basically means the processor is turned off. Think sleep mode, but a little deeper and more power efficient.
  • Z9 is a slightly less low power state, where the display is still turned on and can be updated every so often, for example, to change what the clock says or to display notifications. So it’s less deep than normal sleep mode.

This is almost certainly an oversimplification, but in one sentence, Z states are a way of radically reducing how much power your processor is drawing. If I’ve got anything wrong, please let me know.

4 Likes

I got an error trying to upgrade through the Gnome Firmware application. The update is listed after I ran fwupdmgr enable-remote lvfs-testing, but when pressing the upgrade button, I get:

Failed to create ‘/boot/EFI/UpdateCapsule’: Read-only file system

Might be a Gnome issue, though.

Solution:

Follow the steps outlined here: fwupd - ArchWiki

In my case sudo mkdir /boot/EFI, and then restarting fwupd.service.

I have just upgraded and I am still getting:

ucsi_acpi USBC000:00: ucsi_handle_connector_change: ACK failed (-110)

after resuming. Nothing is even connected to the laptop (except for the modules: 2×USB-C, 1×HDMI, 1xMicroSD).

How do I disable sg_display=0? Will ‘sudo grubby --update-kernel=ALL --args=“amdgpu.sg_display=1”’ do the job? I’m really new to this

I haven’t experienced the white screen bug since I’ve re-enabled scatter/gather and disabled game mode

Can you please tell me how can I re-enable it? Thank you

Wrong thread, but that should do the job. Better yet is to not set amdgpu.sg_display at all, and remove it from your configuration. However, I do not use GRUB, so I’m not sure how to do that.

If memory serves, you could just edit the file /etc/default/grub, remove all references to amdgpu.sg_display there, and finally regenerate using sudo grub-mkconfig -o /boot/grub/grub.cfg.

2 Likes

I think this is the command you’re looking for:

sudo grubby --update-kernel=ALL --remove-args=“amdgpu.sg_display=0

2 Likes

I’ve had a couple BSODs when resuming from standby. I assume this is likely related to the IRQ1 known issue, since I didn’t have any such issues on the previous 3.0.3 EC fix beta.

BSOD is “Critical process died”.

After about a day’s worth of use, the only alarming issue I see is that dmesg is spammed with

xhci_hcd 0000:c1:00.3: Refused to change power state from D0 to D3hot

Is this the IRQ1 failure mentioned in the known issues?

So far don’t encounter any issues with Game mode turned off.
I never set sg_display=0

No, the error describes an usb device/port that does not want to go in or out of a particulair sleep state.

1 Like

I’m not entirely sure if this relates to the new 3.05 BIOS, but hibernation is broken on my end (it worked fine a while ago). Specifically, dmesg is flooded with errors, and my laptop wakes up not long after running systemctl hibernation. Could be merely coincidental, however.

Any else has having hibernation problems on linux after installing the new BIOS?

I’m having the same issue on kernel 6.7.9.

Apr 07 12:57:25 kernel: tsc: Fast TSC calibration using PIT
Apr 07 12:57:25 kernel: tsc: Detected 3293.768 MHz processor
Apr 07 12:57:25 kernel: clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645519600211568 ns
Apr 07 12:57:25 kernel: clocksource: hpet: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 133484873504 ns
Apr 07 12:57:25 kernel: clocksource: tsc-early: mask: 0xffffffffffffffff max_cycles: 0x2f7a4d5e84a, max_idle_ns: 440795314252 ns
Apr 07 12:57:25 kernel: clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
Apr 07 12:57:25 kernel: clocksource: Switched to clocksource tsc-early
Apr 07 12:57:25 kernel: clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns: 2085701024 ns
Apr 07 12:57:25 kernel: tsc: Refined TSC clocksource calibration: 3293.769 MHz
Apr 07 12:57:25 kernel: clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x2f7a4deb66d, max_idle_ns: 440795294980 ns
Apr 07 12:57:25 kernel: clocksource: Switched to clocksource tsc
Apr 07 12:57:25 kernel: kvm_amd: TSC scaling supported
Apr 07 12:58:36 kernel: clocksource: timekeeping watchdog on CPU6: Marking clocksource 'tsc' as unstable because the skew is too large:
Apr 07 12:58:36 kernel: clocksource:                       'hpet' wd_nsec: 511992864 wd_now: 409f1946 wd_last: 402f3d50 mask: ffffffff
Apr 07 12:58:36 kernel: clocksource:                       'tsc' cs_nsec: 512540105 cs_now: 49d42e9653 cs_last: 496f8edfc6 mask: ffffffffffffffff
Apr 07 12:58:36 kernel: clocksource:                       Clocksource 'tsc' skewed 547241 ns (0 ms) over watchdog 'hpet' interval of 511992864 ns (511 ms)
Apr 07 12:58:36 kernel: clocksource:                       'tsc' is current clocksource.
Apr 07 12:58:36 kernel: tsc: Marking TSC unstable due to clocksource watchdog
Apr 07 12:58:36 kernel: TSC found unstable after boot, most likely due to broken BIOS. Use 'tsc=unstable'.
Apr 07 12:58:36 kernel: clocksource: Checking clocksource tsc synchronization from CPU 8 to CPUs 0,6-7,10,12-14.
Apr 07 12:58:36 kernel: clocksource: Switched to clocksource hpet