Lenovo IdeaPad Slim 3 16ABR8
Hardware | PCI/USB ID | Working? |
---|---|---|
Audio | 1022:15e3 |
Yes |
GPU | 1002:15e7 |
Yes |
Wireless | 10ec:b852 |
Yes |
Bluetooth | 0bda:4853 |
Yes |
Webcam | 5986:215f |
Yes |
Touchpad | 04F3:327E |
Yes |
Fingerprint | 27c6:550a |
Yes |
TPM | 1022:15df |
Yes |
Installation
Before installing, disable Secure Boot in the BIOS. You can access the BIOS by pressing F2
at the Splash screen. The boot menu can also be accessed by pressing F12
.
Video
X works natively with a current linux and xf86-video-amdgpu.
If you are having video issues with only the xf86-video-amdgpu installed, also install the AMD PRO package amdgpu-pro-oglpAUR. See AMDGPU.
Wireless
You can use the native wireless driver with disable_aspm_l1=y
and disable_aspm_l1ss=y
Kernel module parameter in the rtw89_pci
Kernel module is required in order for Wi-Fi to work.
For Bluetooth use rtw89bt-dkms-gitAUR with iommu=pt
kernel parameter.
Function keys
No dedicated keys. The Fn
functions on the keyboard are recognized and should work.
Fingerprint
Fingerprint needs libfprint-2-tod1-goodixAUR.
For installation see fprintd.
Power management
The following section was adapted from Lenovo IdeaPad 5 15are05.
Battery Conservation Mode is a feature that limits battery charging to 55-60% of its capacity to improve battery life, being most useful when the laptop tends to run on external power much of the time. It can be controlled with ideapad-cmAUR. With ideapad2024-power-managementAUR or battmngrAUR it is possible to control both Battery Conservation and System performance modes.
Kernel method
Set the ideapad_laptop.allow_v4_dytc=1
kernel module parameter.
To use without reboot:
# rmmod ideapad_laptop # modprobe ideapad_laptop allow_v4_dytc=1
Restart power-profiles-daemon.service
. Now power-profiles-daemon can do everything below.
System Performance Mode
There are 3 modes available: Intelligent Cooling, Extreme Performance and Battery Saving. To toggle it, you need to call some ACPI methods.
First install acpi_call (or acpi_call-lts for LTS kernel, acpi_call-dkms for other kernels) and load the kernel module:
# modprobe acpi_call
Set it to Intelligent Cooling mode:
# echo '\_SB.PCI0.LPC0.EC0.VPC0.DYTC 0x000FB001' > /proc/acpi/call
Set it to Extreme Performance mode:
# echo '\_SB.PCI0.LPC0.EC0.VPC0.DYTC 0x0012B001' > /proc/acpi/call
Set it to Battery Saving mode:
# echo '\_SB.PCI0.LPC0.EC0.VPC0.DYTC 0x0013B001' > /proc/acpi/call
To verify your setting:
# echo '\_SB.PCI0.LPC0.EC0.SPMO' > /proc/acpi/call # cat /proc/acpi/call; printf '\n'
As a result you get the value for the bit SPMO (either 0x0
, 0x1
or 0x2
).
# echo '\_SB.PCI0.LPC0.EC0.FCMO' > /proc/acpi/call # cat /proc/acpi/call; printf '\n'
As a result you get the value for the bit FCMO (either 0x0
, 0x1
or 0x2
). To interpret the results the following table can be used:
SPMO | FCMO | Mode |
---|---|---|
0x0 | 0x0 | Intelligent Cooling |
0x1 | 0x1 | Extreme Performance |
0x2 | 0x2 | Battery Saving |
Rapid Charge
Make sure you have set up acpi_call.
Turn on:
# echo '\_SB.PCI0.LPC0.EC0.VPC0.SBMC 0x07' > /proc/acpi/call
Turn off:
# echo '\_SB.PCI0.LPC0.EC0.VPC0.SBMC 0x08' > /proc/acpi/call
To verify your setting:
# echo '\_SB.PCI0.LPC0.EC0.QCHO' > /proc/acpi/call # cat /proc/acpi/call; printf '\n'
where 0x0
stands for off and 0x1
stands for on.
Battery Conservation
Similarly to the #Rapid Charge, make sure you have set up acpi_call.
Turn on:
# echo '\_SB.PCI0.LPC0.EC0.VPC0.SBMC 0x03' > /proc/acpi/call
Turn off:
# echo '\_SB.PCI0.LPC0.EC0.VPC0.SBMC 0x05' > /proc/acpi/call
To verify your setting:
# echo '\_SB.PCI0.LPC0.EC0.BTSM' > /proc/acpi/call # cat /proc/acpi/call; printf '\n'
where 0x0
stands for off and 0x1
stands for on.
There is also an alternative way to control the conservation mode of the battery.
Known issues
Keyboard
The Keyboard will be disabled after waking up from hibernation, this bug fixes itself after an reboot.
It is possible to permanently fix this bug by adding a i8042.nopnp
kernel parameter, see [1].
Battery
The battery level may be capped above 100% (e.g. with i3-wm) which can lead to confusion.
Bluetooth
It seems pairing does not work correctly with pipewire-pulse. Try to connect to the Bluetooth device directly to pair with the device.
Onboard devices
Sometimes one or more onboard devices get soft locked, although it rarely occurs. To solve this, use rfkill (from util-linux):
# rfkill unblock your_device
Network Adapters not working
It seems external network adapters over the USB-C port do not work even if they did work on other Linux devices.
EFI Boot Manager fills up
The EFI Boot Manager fills itself with old boot entries which need to be manually deleted after changing the OS. For that you can use efibooteditorAUR.