Lenovo ThinkPad X201 Tablet
This article was written using 0831CTO model of the Lenovo ThinkPad X201 Tablet.
Hardware
root #
lspci -nn
00:00.0 Host bridge [0600]: Intel Corporation Core Processor DRAM Controller [8086:0044] (rev 02) 00:02.0 VGA compatible controller [0300]: Intel Corporation Core Processor Integrated Graphics Controller [8086:0046] (rev 02) 00:16.0 Communication controller [0780]: Intel Corporation 5 Series/3400 Series Chipset HECI Controller [8086:3b64] (rev 06) 00:19.0 Ethernet controller [0200]: Intel Corporation 82577LM Gigabit Network Connection [8086:10ea] (rev 06) 00:1a.0 USB controller [0c03]: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller [8086:3b3c] (rev 06) 00:1b.0 Audio device [0403]: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio [8086:3b56] (rev 06) 00:1c.0 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 [8086:3b42] (rev 06) 00:1c.3 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 4 [8086:3b48] (rev 06) 00:1c.4 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 5 [8086:3b4a] (rev 06) 00:1d.0 USB controller [0c03]: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller [8086:3b34] (rev 06) 00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev a6) 00:1f.0 ISA bridge [0601]: Intel Corporation QM57 Chipset LPC Interface Controller [8086:3b07] (rev 06) 00:1f.2 SATA controller [0106]: Intel Corporation 5 Series/3400 Series Chipset 6 port SATA AHCI Controller [8086:3b2f] (rev 06) 00:1f.3 SMBus [0c05]: Intel Corporation 5 Series/3400 Series Chipset SMBus Controller [8086:3b30] (rev 06) 00:1f.6 Signal processing controller [1180]: Intel Corporation 5 Series/3400 Series Chipset Thermal Subsystem [8086:3b32] (rev 06) 02:00.0 Network controller [0280]: Intel Corporation Centrino Advanced-N 6200 [8086:4239] (rev 35) ff:00.0 Host bridge [0600]: Intel Corporation Core Processor QuickPath Architecture Generic Non-core Registers [8086:2c62] (rev 02) ff:00.1 Host bridge [0600]: Intel Corporation Core Processor QuickPath Architecture System Address Decoder [8086:2d01] (rev 02) ff:02.0 Host bridge [0600]: Intel Corporation Core Processor QPI Link 0 [8086:2d10] (rev 02) ff:02.1 Host bridge [0600]: Intel Corporation 1st Generation Core i3/5/7 Processor QPI Physical 0 [8086:2d11] (rev 02) ff:02.2 Host bridge [0600]: Intel Corporation 1st Generation Core i3/5/7 Processor Reserved [8086:2d12] (rev 02) ff:02.3 Host bridge [0600]: Intel Corporation 1st Generation Core i3/5/7 Processor Reserved [8086:2d13] (rev 02)
root #
lsusb
Bus 002 Device 005: ID 05c6:9204 Qualcomm, Inc. Bus 002 Device 003: ID 0bda:0159 Realtek Semiconductor Corp. RTS5159 Card Reader Controller Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 007: ID 17ef:4816 Lenovo Integrated Webcam Bus 001 Device 008: ID 17ef:1005 Lenovo Bus 001 Device 005: ID 147e:2016 Upek Biometric Touchchip/Touchstrip Fingerprint Sensor Bus 001 Device 004: ID 0a5c:217f Broadcom Corp. BCM2045B (BDC-2.1) Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Standard
Device | Make/model | Status | Bus ID | Kernel driver(s) | Kernel version | Notes |
---|---|---|---|---|---|---|
Wireless network controller | Intel Corporation Centrino Advanced-N 6200 (rev 35) | Works | 8086:4239 | iwlwifi | 4.9.16-gentoo | — |
Bluetooth | Broadcom Corp. BCM2045B (BDC-2.1) | Works | 0a5c:217f | bcm203x | 4.9.16-gentoo | — |
Touchscreen | Wacom Serial Penabled 2FG Touchscreen | Works | — | wacom_w8001 | 4.9.16-gentoo | — |
Fingerprint reader | Upek Biometric Touchchip/Touchstrip Fingerprint Sensor | Works | 147e:2016 | — | 4.9.16-gentoo | — |
WWAN & GPS | Qualcomm Gobi 2000 | Not tested | - | - | - | - |
Accessories
(Optional section. Describe any accessories that may be possible in this section. Anything from external plug-and-play LCD screens to computer docks.)
Device | Make/model | Status | Bus ID | Kernel driver(s) | Kernel version | Notes |
---|---|---|---|---|---|---|
Dock | ThinkPad X200 Ultrabase | Not tested | - | - | - | - |
Installation
(Write the necessary steps to get Gentoo onto this system. Try to document any special step that each user will need to reproduce on their system. Includes getting special drivers or firmware from a manufacturer website, etc.)
CPU_FLAGS_X86="aes mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3"
INPUT_DEVICES="libinput wacom"
VIDEO_CARDS="i965 intel"
GRUB_PLATFORMS="pc"
Firmware
root #
emerge --ask sys-kernel/linux-firmware
Kernel
Generic Driver Options --->
[*] X86 Platform Specific Device Drivers --->
<*> ThinkPad ACPI Laptop Extras
[*] Console audio control ALSA interface
[ ] Maintainer debug facilities
[ ] Verbose debug mode
[ ] Allow control of important LEDs (unsafe)
[*] Video output control support
[*] Support NVRAM polling for hot keys
Generic Driver Options --->
[*] Network device support ---
[*] Ethernet driver support --->
[*] Intel devices
<*> Intel(R) PRO/1000 PCI-Express Gigabit Ethernet support
Building the following device driver as module may be appropriate as it requires firmware during initialization.
Generic Driver Options --->
[*] Network device support ---
[*] Wireless LAN --->
[*] Intel devices
<M> Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlwifi)
<M> Intel Wireless WiFi DVM Firmware support
Generic Driver Options --->
<*> Sound card support --->
<*> Advanced Linux Sound Architecture --->
[*] PCI sound devices --->
HD-Audio --->
<*> HD Audio PCI
<*> Build Conexant HD-audio codec support
-*- Networking support --->
<*> Bluetooth subsystem support --->
Bluetooth device drivers --->
<*> HCI USB driver
[*] Broadcom protocol support
<*> HCI BCM203x USB driver
Generic Driver Options --->
-*- Generic input layer (needed for keyboard, mouse, ...)
[*] Touchscreens --->
<*> Wacom W8001 penabled serial touchscreen
Generic Driver Options --->
[*] USB support --->
<*> Support for Host-side USB
<*> USB Mass Storage support
<*> Realtek Card Reader support
[*] Realtek Card Reader autosuspend support
Emerge
Touchscreen requires inputtattach program from the following package.
root #
emerge --ask games-util/joystick
Fingerprint reader is recognized by the following library.
root #
emerge --ask sys-auth/libfprint
Configuration
Finger/Pen Input
The following program has to be running for the functionality to work.
root #
inputattach -w8001 /dev/ttyS0
For X11 to work with finger/pen input, pull in x11-drivers/xf86-input-wacom by inserting wacom
argument into the indicated variable in the file shown below and run the following command for the configuration to emerge.
INPUT_DEVICES="... wacom"
root #
emerge --ask --deep --newuse @world