Lenovo ThinkPad X1 Carbon 8th generation

From Gentoo Wiki
Jump to:navigation Jump to:search

Lenovo has announced Linux support for numerous of its systems.[1]

Amongst them the Lenovo "ThinkPad X1 Carbon Gen 8".

Quoting Igor Bergman, Vice President of PCSD Software & Cloud at Lenovo, "[...] Our goal is to remove the complexity and provide the Linux community with the premium experience that our customers know us for. This is why we have taken this next step to offer Linux-ready devices right out of the box [...]".

These are steps on getting Gentoo fully functional on the Lenovo X1 Carbon, 8th generation.

The Arch Linux wiki pages for the 7th[2] and 8th[3] generation of this laptop had been a great source of information.

As well as ThinkWiki[4].


System Model Verfication

root #dmidecode -s system-version
ThinkPad X1 Carbon Gen 8


Device Make/model Status Vendor ID / Product ID Kernel driver(s) Kernel version Notes
CPU Intel(R) Core(TM) i7-10510U CPU Works N/A N/A 5.8.13
Video card Intel Corporation UHD Graphics Works 8086:9b41 i915 5.8.13
Wireless Intel Corporation Wireless-AC 9462 Works 8086:02f0 iwlmvm 5.8.13
Speakers Skylake+ Works 8086:02c8 snd_soc_skl_hda_dsp, snd_hda_intel 5.8.13
Microphone Skylake+ Needs firmware and configuration 8086:02c8 snd_soc_skl_hda_dsp, snd_hda_intel 5.8.13 DSP Digital mic, Skylake+ platform
Touchpad Synaptics Needs firmware update 06cb:00bd hid-generic,hid-multitouch 5.8.13 USB
Trackpoint Elan Works N/A psmouse 5.8.13
Cameras (internal) Chicony Electronics Works 04f2:b6cb uvcvideo 5.8.13 USB, Two cameras, C & I
Fingerprint reader Synaptics Firmware update needed 06cb:00bd N/A 5.8.13 This device is reported to work by Arch Linux
Power Management Lenovo BIOS settings needed, S3 sleep state N/A thinkpad_acpi 5.8.13 Including keyboard backlight and Fn keys
Bluetooth Intel Works 8087:0026 btusb 5.8.13 USB
Disk Samsung Works 144d:a808 nvme 5.8.13 This might vary on your system


Device Make/model Status Bus ID Kernel driver(s) Kernel version Notes
Docking Station ThinkPad Pro Dock Not tested N/A N/A N/A To be tested


The only senseful way of running Gentoo on this laptop is in UEFI mode. If you choose legacy BIOS, you will not be able to update firmware and some hardware will not work.


The following settings are recommended[5].

Security -> Secure Boot -> Disabled
Config -> Power -> Sleep State -> Linux
Security -> Virtualization -> Kernel DMA Protection -> Disabled
Config -> Thunderbolt BIOS Assist Mode -> Enabled


USEflag Purpose
alsa The ALSA Linux sound system
alsa-plugin Plugins for ALSA
bluetooth Bluetooth for Linux
nvme nvme disk support and firmware update
synaptics Synaptics touchpad and fingerprint reader support und firmware update
thunderbolt Thunderbolt support and firwmare update
tpm Trusted Platform support and firmware update
uefi UEFI support and firmware update


Use fwupdmgr to update your systems firmware. Note to USEflags section. System must be started in efi mode and efivarfs mounted.

root #emerge --ask sys-apps/fwupd

Fetch information from upstream.

root #fwupdmgr refresh

Update the system firmware. This will involve reboots. Repeat until no more updates applicable.

root #fwupdmgr update
Some hardware is known to only function properly under Linux, after firmware updates, including the touchpad and the fingerprint reader.
If you forget to include the uefi thunderbolt nvme and co. USEflags, you will not be able to update the firmware of those devices and they might not function properly.


At the time of the writing of this article, the microphone did not work out of the box.


Add hdsp and hdspm alsa cards to the standard alsa cards.

FILE /etc/portage/make.conf
ALSA_CARDS="maestro3 hdsp hdspm ymfpci"

The following packaes needed to be installed.

root #emerge --ask sys-firmware/alsa-firmware media-sound/alsa-utils media-libs/alsa-topology-conf media-libs/alsa-ucm-conf sys-firmware/sof-firmware

Run alsamixer, tune up the volume master and all microphones to maximum and store the settings.

root #alsamixer
root #alsactl store


The DMIC (Digital Microphone) consists of 4 channels and that topology must be specifically set for pulseaudio.

Some more settings might be needed to prioritize freshly connected HDMI or Headsets over the internal speakers
FILE /etc/pulse/default.pa
load-module module-alsa-sink device=hw:0,0 channels=4
load-module module-alsa-source device=hw:0,6 channels=4
Place module-alsa-sink and module-alsa-source before module-udev-detect and module-detect.

Finally restart the system.

See also