T480s: thinkpad_acpi fails to load, Fn Mute Mic (XF86AudioMicMute) hotkey broken #414

Open
opened 2026-03-17 16:53:14 +01:00 by daic11 · 4 comments

On T480s with libreboot, thinkpad_acpi refuses to load with "No such device".
CONFIG_MAINBOARD_FAMILY being set to "T480S" instead of "ThinkPad T480s" - the kernel module checks for the "ThinkPad" prefix and skip it if it's missing.

This breaks Fn mic mute hotkey (F4) XF86AudioMicMute. The fix is one line in both configs:

config/coreboot/t480s_vfsp_16mb/config/libgfxinit_corebootfb
config/coreboot/t480s_vfsp_16mb/config/libgfxinit_txtmode

CONFIG_MAINBOARD_FAMILY="T480S" → CONFIG_MAINBOARD_FAMILY="ThinkPad T480s"

Until that's fixed, this works as a workaround:
echo "options thinkpad_acpi force_load=1" > /etc/modprobe.d/thinkpad_acpi.conf

On T480s with libreboot, thinkpad_acpi refuses to load with "No such device". CONFIG_MAINBOARD_FAMILY being set to "T480S" instead of "ThinkPad T480s" - the kernel module checks for the "ThinkPad" prefix and skip it if it's missing. This breaks Fn mic mute hotkey (F4) XF86AudioMicMute. The fix is one line in both configs: config/coreboot/t480s_vfsp_16mb/config/libgfxinit_corebootfb config/coreboot/t480s_vfsp_16mb/config/libgfxinit_txtmode CONFIG_MAINBOARD_FAMILY="T480S" → CONFIG_MAINBOARD_FAMILY="ThinkPad T480s" Until that's fixed, this works as a workaround: echo "options thinkpad_acpi force_load=1" > /etc/modprobe.d/thinkpad_acpi.conf
Author

The libreboot version 26.01, system Artix Dinit + niri compositor (Wayland).

The libreboot version 26.01, system Artix Dinit + niri compositor (Wayland).
Author

UPD: When I charge my turned-off laptop via USB-C fast charging, it turns on.

UPD: When I charge my turned-off laptop via USB-C fast charging, it turns on.

Hello @daic11,

The fix is one line in both configs:

config/coreboot/t480s_vfsp_16mb/config/libgfxinit_corebootfb
config/coreboot/t480s_vfsp_16mb/config/libgfxinit_txtmode

CONFIG_MAINBOARD_FAMILY="T480S"CONFIG_MAINBOARD_FAMILY="ThinkPad T480s"

Are you sure these are the only changes needed to make the Fn key, etc., work? For some reason that didn't work for me. I've verified the change with dmidecode -t system. I'll try again later.

When I charge my turned-off laptop via USB-C fast charging, it turns on.

Same as well. Did you find a way to disable that? Any news overall?

Hello @daic11, >The fix is one line in both configs: > >config/coreboot/t480s_vfsp_16mb/config/libgfxinit_corebootfb >config/coreboot/t480s_vfsp_16mb/config/libgfxinit_txtmode > >`CONFIG_MAINBOARD_FAMILY="T480S"` → `CONFIG_MAINBOARD_FAMILY="ThinkPad T480s"` Are you sure these are the only changes needed to make the Fn key, etc., work? For some reason that didn't work for me. I've verified the change with `dmidecode -t system`. I'll try again later. >When I charge my turned-off laptop via USB-C fast charging, it turns on. Same as well. Did you find a way to disable that? Any news overall?
Author

@bileslav

Are you sure these are the only changes needed to make the Fn key, etc., work? For some reason that didn't work for me. I've verified the change with dmidecode -t system. I'll try again later.

I never adjusted MAINBOARD_FAMILY name by myself, but made a hotfix for thinkpad t480s on already working system by:

echo "options thinkpad_acpi force_load=1" | sudo tee /etc/modprobe.d/thinkpad_acpi.conf
# or
sudo modprobe thinkpad_acpi force_load=1

When I charge my turned-off laptop via USB-C fast charging, it turns on.

For this problem when I compiled libreboot for my Dell 3050 Micro, there was a flag in libreboot config "power_on_after_fail", which turns on my Dell 3050 Micro server every time I insert the power cord to the electricity.

cat ./config/coreboot/t480s_vfsp_16mb/cbfs.cfg
power_on_after_fail 0

As you see this flag is not active, but t480s engage like it is. I don't remember such bug in previous builds like 25.04 etc.

@bileslav > Are you sure these are the only changes needed to make the Fn key, etc., work? For some reason that didn't work for me. I've verified the change with dmidecode -t system. I'll try again later. I never adjusted MAINBOARD_FAMILY name by myself, but made a hotfix for thinkpad t480s on already working system by: ``` echo "options thinkpad_acpi force_load=1" | sudo tee /etc/modprobe.d/thinkpad_acpi.conf # or sudo modprobe thinkpad_acpi force_load=1 ``` > When I charge my turned-off laptop via USB-C fast charging, it turns on. For this problem when I compiled libreboot for my Dell 3050 Micro, there was a flag in libreboot config "power_on_after_fail", which turns on my Dell 3050 Micro server every time I insert the power cord to the electricity. ``` cat ./config/coreboot/t480s_vfsp_16mb/cbfs.cfg power_on_after_fail 0 ``` As you see this flag is not active, but t480s engage like it is. I don't remember such bug in previous builds like 25.04 etc.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
libreboot/lbmk#414
No description provided.