[SOLVED] FW16 (Not so) Curious case of fans not working on newest generic kernel (Amd + dGPU)

Distro: Ubuntu 22.04
Laptop: Framework 16 (AMD Ryzen™ 7040 Series incl. AMD Radeon RX7700S dGPU, Prebuilt)

Linux-Kernel:
linux-image-6.8.0-40-generic (before, doesn’t work)
linux-image-6.5.0-1027-oem (now, works)

BIOS-verison: 3.03

Just wanted to give a headsup to people like me who are new to ubuntu and didn’t really follow official installation guide. I managed to resolve my issues by now.

Problem

I noticed during a week that my fans stopped working most of the time. Looked into BIOS, fans spun again within a minute, but Ubuntu was dead silent still.

So I took a look at my hwinfo to explore the output and search for possible fan issues in the generated file:

sudo hwinfo > hwinfo.txt

i could figure out that thermal which is part of the kernel had an unknown status so looking into it via journalctl showed a bunch of errors.

journalctl -b | grep thermal

Temps couldn’t be read by the kernel/ACPI basically, so no fans for me.

edit: looking at uname -r showed my issue, that is the generic kernel was used. Not the oem one. If you already are on oem, this post probably isn’t for you.

Solution

Installing the newest oem kernel (as is recommended in the official guide i didn’t follow) solved the issue. So here’s how I did that:

sudo apt install linux-image-6.5.0-1027-oem

This way I had the newest oem-kernel installed, now to get updates for it also install the transitional package for it:

sudo apt install linux-image-oem-22.04

And update the bootloader for good luck

sudo update-grub

Now annoyingly enough, the installed generic kernel was newer than the oem kernel, so per default, GRUB used the generic kernel. Since I didn’t want to change /etc/default/grub settings, I loaded into GRUB by pressing Esc (ONCE) during startup and selected the oem kernel manually.

You should see your new kernel now with:

uname -r

showing some numbers and oem in it instead of generic.

Afterwards I uninstalled the generic kernel(s) using:

sudo apt remove --purge <installed generic kernel here>

Make absolutely sure your new oem-kernel boots up before removing your old one

and removed the transitional package aswell.

sudo apt remove --purge linux-image-generic-hwe-22.04

Hope this helps people who have similar issues before they send their laptop for repairs and stuff. Linux is great.

I thought I reviewed the Ubuntu guides the other day and the follow up guide doesn’t say anything about changing kernels to the OEM one for 22.04. The image that is shown in the guide has some language but not the guide that is linked. I though this was only for some of the other Linux flavors you needed to change the kernel as per the guides.

Can @matthartley or @Destroya (Not sure where the Matt Hartley tag went) explain what is correct here?

The Ubuntu Guide for 24.04 Framework Laptop 16 doesn’t mention anything either about the kernel until you get to the completion guide here. Then it says to NOT use the OEM kernel at this time.

(This is text from the Github guide)

" This will:

  • Update your Ubuntu install’s packages.
  • (Optional) Stop buzzing sound from headphone jack if its present.
  • We are NOT recommending an OEM kernel at this time, this may change in the future. Default kernel is where you need to be."

I am curious if the OP was just using Ubuntu 22.04 LTS due to familiarity/preference over the 24.04 LTS. Similar to why someone would use Windows 10 vs. Windows 11. I am a neophyte when it comes to Linux versions. I thought the 24.04 was pretty well ironed out since it is the LTS version not the constantly updated version that may introduce instability.

The only part I do now is upgrading from the 23.10 to 24.04 LTS using the builtin updater managed to bork the operating system itself on my FW13 machine. This may have been fixed now since that was shortly after it was released in June. Just required some manual command line work to get it functional again after doing some Google searches as to what blew itself up.

BTW, great use of instructions on what to do and cautions for fixing the issue you came across @Jonny00 ! Welcome to the community. Congratulations on your Framework Laptop 16. :smiley:

1 Like

Thank you! Indeed, I was referring to that image. The commands there install the oem kernel transitional package. That gave me the idea to try out the oem kernel and it worked out great!

Although the generic kernel did work previously, just the newest updates broke it for whatever reason.

I’m using 22.04 Ubuntu since I thought It’d have more compatibility and guides available online. I’m just a fledgling Linux user who recently escaped Windows for better lands to do programming in. FW16 is my first personal Linux environment and I’m really happy with it!

1 Like

Greetings all,

Ideally your best experience will be with 24.04, as 22.04.x (various point releases) are getting a bit old. They are supported, but 24.04 is a better overall flow with newer GNOME, among other newer packages, etc.

You only need to follow the updated guides. Which as you found, no longer mention OEM kernel usage. The images have not been updated yet, but text of the guide is correct.

For Ubuntu 22.04, 6.8.0-40-generic would be the correct kernel at this time. This is the flow Canonical has suggested at this time.

Just so everyone is clear, linux-image-oem-22.04 at this time is in fact, 6.8.0-40. You can verify this by doing an apt search linux-image-oem-22.04 and reading the output.

Now, if you are seeing a difference between the two version of the same kernel with

journalctl -b | grep thermal

This would indicate either something was corrected in the switch back and forth or there was a bug showing up. In that last instance, you will want to file a bug report as I have not been able to reproduce it here.

Absolutely nothing will come to harm booting OEM, but, you are literally booting the same thing. :wink:

The 22.04.3 attached to the kernel in the image indicate the last refresh, in this case, 6.8.0-40.

Ubuntu