Note
Archived: between launch (late 2023) and the time of writing (early 2025), the software issues are mostly resolved and the 2.8k display was released (fixing HiDPI). The Framework AMD 7040 series is a solid Linux machine.
Device notes and configuration under Linux for the Framework Laptop 13 AMD Ryzen 7040 Series Ryzen 5 7640U variant, DIY edition.
Everything works of the box as of Linux v6.5 (>=6.9 recommended) with firmware version 03.03 (03.05 recommended).
- AMD Ryzen 7640U (Phoenix, Zen 4)
- SK hynix Platinum P41 1TB SSD
- Crucial CT2K16G56C46S5 32GB DDR5-5600 SODIMM
- BOE NE135FBM-N41 v8.2 (matte) 13.5", 3:2, 2256x1504, 204 ppi, 400 nits, eDP1.4, 40 pins, DC-mode dimming (not PWM)
- 55Wh battery
- RZ616/MT7922 WiFi adapter
- 4x USB-C Expansion Cards
- Capella CM3218 ambient light sensor
- Notebookcheck review
- 204 ppi display - not ideal for HiDPI, needs 1.5x fractional scaling
- System freezes: update to BIOS version 03.03
- Fingerprint reader fails to register: update fingerprint reader firmware
- Graphical corruption, blinking/flashing white screen: workaround: fixed in BIOS 03.05 (workaround:
amdgpu.sg_display=0
or increase iGPU RAM in BIOS) - vaapi vp9 decoding glitches: fixed in linux-firmware@97733278
- Further AMDgpu instability and performance issues
- MT7922 WiFi limited to 802.11n (WiFi 4) and 2.4GHz: configure the regulatory domain
-
ectool
unsupported: pending kernel patches, workaround via fork - system wakes if AC is connected during sleep: pending firmware update, BIOS 03.05 workaround in Linux >=6.9, BIOS 03.03 workaround in Linux >=6.7, otherwise workaround via udev rules
- Bluetooth LE Audio unsupported by MT7922: see MediaTek MT7922 controller crashes after LE Setup Isochronous Data Path
- Systemd suspend-then-hibernate wakes up after 5 minutes: fixed in Linux >=6.8-rc.1 via kernel patch, workaround:
rtc_cmos.use_acpi_alarm=1
- power-profiles-daemon does not set EPP: fixed in v0.20
- HDMI and DisplayPort expansion cards do not autosuspend: fixed in systemd v255 (via systemd patch)
- ambient light sensor fails to init: fixed in Linux >=6.7
- VP9 HW decoding issue, high power use when decoding H264 & vp09 with vaapi (software decoding is more efficient) and Power consumption for HW accelerated video decoding for Radeon iGPUs is simply outrageous: fixed in Linux >=6.10.7 (see AMD VCN Dynamic Power Gating)
- Headset microphone not selectable as an input source: fixed in Linux >=6.6.8 (via kernel patch, workaround via kernel params)
- ucsi_acpi errors
- USB Power Delivery issues with <60W chargers: fixed in 3.03b firmware update
- PCIe not utilising full USB 4 40Gb/s link speeds: fixed in Linux >=6.8-rc.1 via kernel patch
- AMD P-State Preferred Core: added in Linux >=6.9
- Adaptive Backlight Management (ABM): added in Linux >=6.9 and ppd >=0.20
- Coreboot support
- GUI-based UEFI
- can set custom charge limit
- no "legacy" S3 deep sleep option
- getUserMedia / getDisplayMedia Test Page - useful for testing webcam/screensharing
- Hardware video acceleration VA-API support via
libva-mesa-driver
- Firefox requires
media.ffmpeg.vaapi.enabled=true
- Firefox requires
- S3 sleep unsupported
- S0ix supported, reaches S0i3.0
- consumed ~4.7% battery in ~12 hours
- Debug via drm/amd amd_s2idle.py
Test environment
- 40% brightness (~200 nits)
- WiFi connected
- Bluetooth disabled
- webcam and microphone disabled (via hardware switches)
- keyboard backlight disabled
- power button LED lowest brightness
- ambient light sensor disabled (
hid_sensor_hub
) - Firmware: 03.03
- GNOME with 150% scaling
- 4x USB-C expansion cards
powerstat -d 0 -c -H 1 480
One foot
terminal running powerstat
- Linux 6.5.9-arch2-1
- GNOME 45.1
gnome-shell --no-x11
(XWayland disabled)gdm3
gnome-settings-daemon
- MT7922
State | C3% | Power (W) |
---|---|---|
idle (kernel: no TLP/ppd) | 92.268% | 3.92 |
idle (ppd balanced) | 85.5% | 3.86 |
idle (ppd power saver) | 86.521% | 3.67 |
- 6.6.0 #1-NixOS
- GNOME 44.5
- MT7922
State | C3% | Power (W) |
---|---|---|
idle (kernel: no TLP/ppd) | 99.586% | 4.27 |
idle (ppd balanced) | 98.32% | 4.43 |
idle (TLP defaults) | 97.899% | 3.93 |
idle (TLP power saver) | 98.256% | 3.89 |
- 6.6.2 #1-NixOS
- GNOME 45.1
amdgpu.abmlevel=3
- MT7922
State | C3% | Power (W) |
---|---|---|
idle (TLP power saver, balanced platform profile) | 99.451% | 3.10 |
- 6.6.8 #1-NixOS
- GNOME 45.2
- patched power-profiles-daemon (multiple drivers)
- AX210
State | C3% | Power (W) |
---|---|---|
idle (ppd balanced) | 99.338% | 4.51 |
idle (ppd balanced, powertop autotune) | 99.382% | 4.35 |
idle (ppd power saver) | 99.368% | 4.32 |
idle (TLP power saver, low power platform profile) | 99.376% | 3.84 |
idle (TLP power saver, balanced platform profile) | 99.391% | 3.80 |
- 6.9.0 #1-NixOS
- GNOME 46.1
- AX210
- 40% brightness (~200 nits)
- ppd 0.21 (with Adaptive Backlight Management)
State | C3% | Power (W) |
---|---|---|
idle (ppd power saver) | 99.368% | 3.12 |
idle (ppd balanced) | 99.313% | 3.61 |
- One
foot
terminal runningpowerstat
- Firefox (in Wayland mode with hardware-video acceleration) playing 1080p vp9 YouTube video
- both windows evenly split (vertically)
- other baseline settings as above
- 6.6.0 #1-NixOS
- GNOME 44.5
- MT7922
State | C3% | Power (W) |
---|---|---|
video (kernel: no TLP/ppd) | 85.867% | 10.25 |
video (ppd balanced) | 86.230% | 10.36 |
video (ppd power saver) | 85.531% | 10.50 |
video (TLP defaults) | 86.122% | 10.20 |
video (TLP power saver) | 84.004% | 8.59 |
video (TLP power saver, balanced platform profile) | 84.842% | 8.13 |
- 6.6.2 #1-NixOS
- GNOME 45.1
amdgpu.abmlevel=3
- MT7922
State | C3% | Power (W) |
---|---|---|
video (TLP power saver, balanced platform profile) | 83.483% | 7.99 |
- 6.6.8 #1-NixOS
- GNOME 45.2
- patched power-profiles-daemon (multiple drivers)
- AX210
State | C3% | Power (W) |
---|---|---|
video (ppd balanced) | 84.705% | 9.35 |
video (ppd balanced, powertop autotune) | 84.891% | 8.83 |
video (ppd power saver) | 83.443% | 8.82 |
video (TLP power saver, low power platform profile) | 83.390% | 8.11 |
video (TLP power saver, balanced platform profile) | 84.495% | 8.26 |
- 6.9.8 #1-NixOS
- GNOME 46.1
- ppd 0.21, balanced
- AX210
- mpv fullscreen
- Firefox (windowed) + terminal evenly split (vertically)
State | C3% | Power (W) |
---|---|---|
video (mpv) | 88.199% | 7.43 |
video (patched amdgpu, mpv) | 87.410% | 6.72 |
video (Firefox) | 88.199% | 7-8 |
video (patched amdgpu, Firefox) | 87.410% | 5 |
- One
foot
terminal runningpowertop
- Firefox, light websites (no videos)
- both windows evenly split (vertically)
- other baseline settings as above
- 6.6.1 #1-NixOS
- GNOME 44.5
- RZ616 WiFi adapter: 1.84-2.19W
brightnessctl set 0%
- TLP power saver (config)
State | Power (W) |
---|---|
browsing, WiFi disabled | 4-5 |
browsing, WiFi enabled | 5-6 |
- 6.7.4 #1-NixOS
- GNOME 45.3
- AX210
- 40% brightness (~200 nits)
- patched power-profiles-daemon (multiple drivers)
State | C3% | Power (W) |
---|---|---|
browsing (ppd power saver) | 75.899% | 5.79 |
browsing (ppd balanced) | 80.195% | 6.09 |
- 6.9.0 #1-NixOS
- GNOME 46.1
- AX210
- 40% brightness (~200 nits)
- ppd 0.21 (with Adaptive Backlight Management)
State | C3% | Power (W) |
---|---|---|
browsing (ppd power saver) | 89.596% | 5.49 |
browsing (ppd balanced) | 89.436% | 5.98 |
- 6.6.1 #1-NixOS
Device | State | Power (W) |
---|---|---|
Display | 0% brightness | 3.14 |
Display | 40% brightness | 3.52 |
MT7922 | Idle (0.0 pkts/s) | 1.67 |
MT7922 | YouTube 4K (3461 pkt/s) | 4.05 |
MT7922 | YouTube 4K (4690 pkt/s) | 4.98 |
MT7922 | Speed test (16557 pkts/s) | 9.16 |
- 6.6.2 #1-NixOS
Device | State | Power (W) |
---|---|---|
Display | 40% brightness | 3.52 |
AX210 | Idle (0.0 pkts/s) | 1.55 |
AX210 | YouTube 4K (3601 pkts/s) | 5.06 |
AX210 | Download (10400 pkt/s) | 6.40 |
AX210 | Speed test (13539 pkt/s) | 7.14 |
- CPU:
/sys/devices/system/cpu/cpu*/cpufreq/*
- Platform:
/sys/firmware/acpi/platform_profile
Param | Value |
---|---|
scaling_governer |
performance |
scaling_driver |
amd-pstate-epp (active) |
energy_performance_preference |
performance |
platform_profile |
balanced |