Framework 13 with AMD Ryzen 7040 Series Makes for a Great Linux Laptop
phoronix.com
phoronix.com
The upgrade experience from the Intel 12th gen to a Ryzen 5 took about a half-hour, doing only the mainboard and no display or hinge upgrades, and I was already familiar with the internals from assembling it as a DIY. It's not trivially easy, and there were a few frustrating moments that aren't unique to the Framework (ok, I'm just talking about the goddamned wifi antenna connections), but I've had a harder time upgrading or repairing just the RAM or storage on some ultrathin laptops.
The firmware limitations on ports imposed by AMD are frustrating in concept but less so in practice; for me it meant just swapping expansion cards from the rear slots to the front slots. I can imagine for people who had very specific setups it could be more disruptive.
But the OS experience was sloppy, and I'm not surprised that Phoronix waited until Fedora 39 left beta. AMD GPU issues necessitated kernel patches that wouldn't land in Fedora 38 by launch, and I still hit GPU-related memalloc issues with the updated kernel _and_ the BIOS update that Phoronix also waited for.[1] I've also hit the wake-while-lid-closed problems specific to the AMD mainboard that have onerous udev workarounds.[2]
The weird power supply limitations for using the board standalone, requiring at least a 100W supply for still less than full performance unless any battery is attached, also limits the flexibility that makes these boards attractive outside of the laptop case, whether bought for that intent or as a post-upgrade reuse.
1: https://community.frame.work/t/tracking-graphical-corruption...
2: https://community.frame.work/t/tracking-framework-amd-ryzen-...
From my experience, it takes about a year between the time AMD hardware is generally available to the public and the time Linux support for it is rock solid.
I got one of the first 6800U laptops available and at the beginning it was rough, crashing often for no reasons. Slowly, each new kernel or firmware version fixed more and more things until one day, about a year later, all issues were gone.
It had been downgraded to OpenGL 3.3 since Ubuntu decided to drop the proprietary driver.
I'm on Ubuntu 23.10 and I think just the pretty new kernel, plus my Framework board being a later build with the newer firmware, meant I dodged any graphics issues (at least any I'd have immediately noticed).
That's because Framework doesn't want to risk getting liable for damaged power supplies. With a battery, the power management circuitry can make sure that, bar an outright shortcut, the load on the PSU will not ever be more than the allowed power. Without it, there is no buffer.
The 100W suggestion is the same as the Intel board, though the Intel board can run standalone on the stock 60W supply without a battery by staying in a lower-wattage mode. The 100W problem specific to AMD is the inability to boot at all without a battery at under 100W, and not being able to hit max stock TDP with a 100W or greater supply unless a battery is also installed — even if it never draws from it.
From Framework's emails to early-batch buyers on the subject:
> Note that performance will currently be limited without the battery present. We’re working with AMD and our manufacturing partner Compal to tune and improve this. In the meantime, we recommend using a 100W USB-C power adapter to mitigate some of the performance reduction.
I didn't upgrade the battery and the battery life is similar (as in, not great; about 4-5 hours of coding while occasionally maxing all cores, 2 hours or less of sustained gaming), but it's also hard to judge because of all the power/wake problems while in sleep. I've gotten in the habit of just shutting it down instead.
Blender was "usable" on Intel but I can work comfortably with much bigger scenes on the AMD board. I had 32GB RAM on both boards, going from DDR4 to DDR5 by necessity.
Anecdotally, non-GPU single/multi-core stuff (for me, typically GIS-related functions) feels better but not by as huge of a leap.
> When we go from S0i3 to S0ix, the EC will send some dummy key presses to the host so the keyboard will keep working. This may cause the host to wake up to screen on, and stay there.
Which is what spawned the udev workarounds of just disabling wake-on-keyboard altogether, which solves for both the lid and AC connection incorrectly waking from sleep.
Which is onerous because wake-on-keyboard is a pretty common thing to want enabled on a laptop! It's not the end of the world, just another "yeah, I'm using Linux" moment.
I get shit battery life (~3 hours), probably because I have 30 Firefox windows open with a total of 2k tabs or so (my fault, I should clean it up), so at least one core is at 25% or so all the time, or worse. And of course compiling things or watching video drags that down real fast.
I can't justify another upgrade after having this one for only a year (especially since I'll need new RAM), but maybe I'll think about an AMD board in 2025 or so.
I installed Archlinux on both and the support has been very solid with the `linux-lts` kernel and only one kernel flag (`amd_pstate=guided`.)
The following work: touchscreen; suspend (s2idle, which correctly enters S0ix state giving ≥100h battery life suspended but requiring I disable entries in `/proc/acpi/wakeup`); audio; media keys; game controls; wifi; Bluetooth; USB; SecureBoot (with `systemd-boot`); webcam (available only on Win Max 2.) The TPM2 works, but I haven't done anything with it yet (and it's an fTPM.)
Battery life is quite good (8~10h with the `acpi-cpufreq` `powersave` governor.) If I dial down the TDP, I can eke out even more battery life than that. If I dial it up to performance, I get 1~2h of battery life (and the exhaust from the fan port runs very hot.) I plan to try the `amd_pstate` governor (kernel flag `amd_pstate=active`) once support is available in the LTS kernel, though I like being able to control TDP via the CLI with AUR packages like `ryzenadj-git`. (This sounds like a lot of work, but I have a short shell script where I dialed in the right `cpupower` and `ryzenadj-git` commands optimal for my use.)
Hibernate works perfectly on the Win 4; I haven't tested it on the Win Max 2 (since s2idle works so well!)
On the Win 4, I can't get `xrandr` modes at anything other than native resolution (1920×1080) to work, but I am content with scaling via `xrandr --scale-from`. All resolutions display properly on the Win Max 2. Rotation works perfectly on both devices, but I rotate manually (and I haven't bothered to see if there is a gyroscope sensor.) There is minimal to no screen tearing. The displays present to the OS as landscape (i.e., rotation is not necessary from the Linux console.)
The only hardware that outright doesn't work are the fingerprint readers (but I believe Linux support for fingerprint readers is limited to very few devices.)
In short, my recent experience with AMD 7840U/Radeon 780M has been nothing short of amazing, and these devices have been an absolute pleasure to use.
And I want to emphasize that the "support" as in Framework responding to and shipping fixes has been good. The "support" as in the hardware working consistently, particularly in Linux and without distro-specific workarounds, has had holes which sound common enough outside of Framework devices that I'd wager the GPDs are the exception more than the rule.
I'll say at least that the Framework's fingerprint reader and display settings Just Worked through the upgrade.
My assumption prior to purchasing these devices was that AMD support would be the main reason for me returning them.
I was quite surprised to see just how well everything worked, and, in fact, these devices have given me much less trouble than my i7-1165G7 Dell XPS 13".
In fact, these devices has worked so well that it's really made me more excited about consumer technology and new laptops and portables than I have been in a long time!
I am worried that I may be mistakenly generalising this to all AMD devices. I have even been considering ditching Intel for my next laptop upgrade…
What? I've been thinking about a VISA mounted PC on the back of my TV. This board seems like a great idea, but 100W for a laptop board? Why? Are there some transients that need more than some caps can supply?
https://community.frame.work/t/recommended-watts-for-amd-coo...
https://community.frame.work/t/resolved-mainboard-standalone...
https://community.frame.work/t/amd-board-solely-in-the-coole...
The Intel boards also recommended 100W if there's no battery; the AMD issue is that _even with_ a 100W supply, performance is capped, and with a smaller power supply you might not be able to boot at all.
It's not just a matter of poor drivers and not being able to wake up from sleep. You typical Mac lasts for tens of hours on battery and runs faster than Intel/AMD's flagship laptop grade processors. This is a big deal and if the x64 hardware people don't up their game soon, the Linux on desktop community will be hurt as users would move to the Apple ecosystem, despite the non-free nature. The gap has grown too big.
That's an odd thing to say given given GNU/Linux runs on more architectures than any other OS. For example there is a Chromebook, which is (or is slated to become?) a skin over GNU/Linux. That includes using Wayland. If you want access to the full GNU/Linux stack, Chromebook's provide Crostini.
Your point about Apple pulling off a step change with the M series is correct of course, and Asahi Linux notwithstanding we don't have full access to it. But other hardware vendors see that as an opportunity - if they can produce an equivalent they can take advantage of the fact that Apple produces a premium product most of the world doesn't want to pay for. When they do, GNU/Linux users will be among the early adopters.
It's difficult to see how be GNU/Linux could get left behind. AMD/Intel on the other hand are likely shitting themselves. They've now had years to catch up, but has been very little sign of it. That mountain of technical debt created by the necessity of backward compatibility is proving very hard to move. The are starting to look like dinosaurs that are pretty safe in their niche, but the world has moved on and that niche is shrinking.
Exactly because of this migration, did Microsoft see an business opportunity to come up with WSL, and be an alternative to Apple's offerings.
Being one of those UNIX folks, that has long made use of Virtual Box and VMWare, instead of wasting time dual booting.
Crostini is a good example of GNU/Linux desktop still not being there, and I quote,
"
- Cameras aren't yet supported.
- Android devices are supported over USB, but other devices aren't yet supported.
- Android Emulators aren't yet supported.
- Hardware acceleration isn't yet supported, including GPU and video decode.
- ChromeVox is supported for the default Terminal app, but not yet for other Linux apps.
"
Taken from https://support.google.com/chromebook/answer/9145439
So? Any other architecture that outperforms the M3 on both efficiency and power?
No that I know of.
But that wasn't disputing that. I was commenting on your speculation the open source community would flee to a closed source operating system because the M3 currently reins supreme. I doubt they will. I also doubt M gap will Apple's engineers created will be a long term thing.
I've been using XFCE for the better part of 15 years meanwhile. Its Wayland support is a permanent unfortunate "work-in-progress" (apparently they only have two full-time developers for the whole project?) and I'd assume many other less popular desktop environments are in a similar bucket
The Framework is a fantastic laptop and a joy to use even under Windows 11. I don't hold its XFCE issues against Framework, but it's worth remembering that "Linux on the Desktop" isn't a single monolith
Nice, nearly 20 years for me.
> (apparently they only have two full-time developers for the whole project?)
We actually have zero full time developers. I'm probably the closest thing to a full-time developer as I have a lot of free time on my hands these days, but even then I don't work on Xfce enough to call it full time. And we only have two people working on Wayland support, and so that's even less than the non-full-time each of us put in.
> Its Wayland support is a permanent unfortunate "work-in-progress"
We've probably made more progress in the past 6 months than all the time prior, combined. Things are coming along, but it'll probably be another 1-2 years before it's usable, and only "stable" in time for the 4.22.0 release at the end of 2026. And that's still all aspirational; it may not materialize in that time.
It turns out that the Wayland protocol is super limited, and a lot of things that you could do easily on X11 you essentially have to re-invent from scratch. And that's before we even talk about turning xfwm4 into a Wayland compositor. (Some rando has forked xfwm4 and is building a Wayland compositor with it, but has chosen not to collaborate with us at all, so it's unclear if their work will ever be mergeable.)
But that's what happens when you're a developer for a software project that has no corporate sponsorship or people hired specifically to work on it. Feel free to contribute; we could definitely use the help!
Anyhow: I run Xfce on a Framework 13, and it's fine. I've set UI scaling to 2x, and I've added a custom modeline to X11 for 2712x1805 (1.2x native). Big downside is apparently this turns off the iGPU's ability to eliminate tearing. I suspect there's a way to fix that, but I haven't had the motivation to dig into it (I wonder if simply using a more-even scaling factor like 1.25 would do it, even if things would appear a little smaller than I'd like).
I just want to say thanks, your work is very much appreciated!
> I run Xfce on a Framework 13
Do you do much gaming or 3D stuff? I have a Framework 13 AMD running NixOS (Kernel 6.6 and BIOS 3.03) and its performance is great in desktop apps, but simple games seem to really work it. And by "simple" I'm talking about Everquest Titanium that runs smooth as butter via PoL on an i3-7100U (Xubuntu 18.04), and also Wobbly Life that runs happily on a Lenovo with Ryzen 4500U (Windows 11). Both of those games cause my FW 13 to spin fans up like crazy after a couple mins and sound like it's going to take-off. I'm trying to figure out if I'm missing something from my NixOS setup, because I feel like its performance should be better.
The only thing I had to do to get scaling working for me was set two environment variables[2].
I was indeed worried about this when I bought the laptop. Prior to this, I avoided anything with resolutions higher than 1920x1200. But it turned out that everything mostly worked with a couple tweaks.
I think the only real issue I've run into is `git gui`. As I understand it, the GUI toolkit it uses doesn't support scaling? Not sure. I ended up working around it by just increasing font sizes. I suppose this exposes the weakness that is probably impacting you: the scaling on my laptop is being done by the GUI toolkits, not the display server or compositor. (I don't always run a compositor, but when I do, I use `picom`. Mostly just to avoid tearing.)
[1]: https://github.com/BurntSushi/wingo
[2]: https://github.com/BurntSushi/dotfiles/blob/ea3a88e6160f4244...
https://gitea.exu.li/exu/configs/src/branch/main/arch-config...
If anyone has questions, feel free to ask.
Mediatek wifi is basically as good as the ax210 in my 12th gen.
The CPU uplift over the 12th gen i7 is immense. I foolishly forgot to do before/after compilation times on my usual projects, but in general things seem to build significantly faster (Medium-Large sized Typescript + Rust codebase). My workloads also don't seem to get the new cpu as hot as my 12th gen intel cpu got.
The wifi that ships with the ryzen framework is made by MediaTek, not Realtek, and it's been working smoothly since I installed it.
I think just in its own right there are some AX210 Linux driver issues, particularly with 6E connectivity; I don't have a 6E network so I haven't really noticed.
I can wait and pay extra for a FM 16, but I don't need the extra size or weight for what for me is going to be a secondary machine. And sadly, the topcase and keyboard seem to be an area where the "hackability" and "openness" of the hardware platform don't exist, so I can't even homebrew my own solution.
I wonder if you'll have more ability to play around in that space with the 16, as its top case is more modular. Part of the problem with the Framework 13 input cover is that the cover including the key gaps is all one piece of aluminum, so things have to work within those sized holes, or else involve a completely different input cover.
(Edit: the 16 does I think have more theoretical room for alternate keyboard layouts, but of course that's assuming anyone makes them. More importantly, it just has the inverted T layout on the regular keyboard already.)
Source: typing this on my Framework 13 AMD right now :)
It goes up to about 13W while watching youtube, even though it claims hardware accelerated video decoding is on.
Your mileage may vary as people have different sized fingers and such.
It's a far cry even from my old Google Pixelbook, which is a (distant) second best touchpad I've used.
I don't care too much about gestures, but mostly about stable palm rejection and proper acceleration curves. The current implementations sadly provide neither.
Framework's keyboard OTOH is very similar to a macbookpro, keys feel a little higher and more tactile and also the layout is simpler than how my thinkpad has them laid out.
truth be told im mostly using an external keyboard so far, havent really gone anywhere w/ the laptop yet.
The biggest issues are setting up a workaround for staying in sleep/suspend while the lid's closed but plugged in: https://community.frame.work/t/tracking-framework-amd-ryzen-...
And flipping a VRAM flag to avoid GPU memory allocation issues: https://community.frame.work/t/tracking-graphical-corruption...
Neither of which is Fedora specific, and both of which might be resolved via update.
Then for 2., there's a kernel param I had to set to avoid a display issue, that's mentioned here: https://www.phoronix.com/news/AMD-Scatter-Gather-Re-Enabled , I had that exact problem.
In the meantime I got my desktop set up again (was stuck on Windows 7, now on linux) and got some horrible Asus laptop for when I'm not at my desk.
The only thing I'm worried about is all of my current setup is on X and it seems for any real display scaling that Wayland is the way to go, so I'm not excited about switching everything over (I'm on i3 and probably a few other tools/scripts that rely solely on X). I guess we'll see how it works out.
Been there; web sites are rather heavy nowadays and two cores, combined with everything else running on the system, just can't keep up anymore.
I do really want the Framework 13 though, it seems a perfect size.
I can tell you that I've been typing since my first c64 in 1989.
I once placed in the top 20 of typeracer by using a basic apple keyboard I found lying around at work.
I know how to type very well.
I still want a proper nordic keyboard on my laptop.
As far as I know there are mainly two (but there may be more out there) keyboard standards, ANSI and ISO, that define the size and proportions of the physical keys.
Icelandic keyboard layouts for instance use ISO, and so what I meant with my previous comment was that other Nordic layouts would too.
In that sense, Framework has what you need.
But labels are a different story, so in that regard they do not.