Lenovo ThinkPad Yoga 260

From ArchWiki
Jump to navigation Jump to search

Tango-edit-clear.pngThis article or section does not follow the Laptop page guidelines.Tango-edit-clear.png

Reason: Needs IDs in the hardware table and a function keys section added (Discuss in Talk:Lenovo ThinkPad Yoga 260#)
Hardware PCI/USB ID Working?
Touchpad Yes
Touchscreen Yes
Keyboard Yes
Video Yes
Webcam Yes
Bluetooth Yes
Card reader Yes
Audio Yes
Wireless Yes
Accelerometer Yes
Fingerprint reader Yes
Smart card reader Yes

Installation

To access the boot menu and BIOS, use "F1". Disable secure boot from the BIOS.

TrackPoint

Sometimes the TrackPoint stops working and dmesg reports a stream of garbage when it is touched. Removing and probing the kernel module solves the problem:

# rmmod psmouse
# modprobe psmouse

Video

With default configuration, tearing is apparent when playing videos. DRI3 and glamor are supported. To solve tearing and use DRI3 and glamor, create the file /etc/X11/xorg.conf.d/20-intel.conf with the following content:

Section "Device"
   Identifier  "Intel Graphics"
   Driver      "intel"
   Option      "AccelMethod"  "glamor"
   Option      "DRI"    "3"
   Option      "TearFree"    "true"
EndSection

Fingerprint reader

Works using https://github.com/3v1n0/libfprint. Bug tracker for fingerprint sensor: https://gitlab.freedesktop.org/libfprint/libfprint/issues/54

Power management

If the device has unusually high CPU usage in idle then it might be an acpi firmware issue. On Windows this behaviour stops after a regular update. On Linux you can workaround by disabling whatever device is interrupting excessively.

Find the interrupting source:

grep . -r /sys/firmware/acpi/interrupts

This might output something like this:

...
/sys/firmware/acpi/interrupts/gpe34:   30289   enabled  <-- this causes many interrupts
/sys/firmware/acpi/interrupts/gpe35:       3   enabled
...

Disable it (as root, not just sudo):

echo "disable" > /sys/firmware/acpi/interrupts/gpe34

Now the CPU should idle at 0-2% usage.

Unfortunately you have to do that on every startup. A systemd service can do that automatically for you.

Create /etc/systemd/system/disable-interrupts.service:

[Unit]
Description=Disable acpi interrupts
[Service]
ExecStart=/usr/bin/bash -c 'echo "disable" > /sys/firmware/acpi/interrupts/gpe34'
[Install]
WantedBy=multi-user.target

Then enable the disable-interrupts.service systemd unit.