Installing Fedora 27 on a ThinkPad X1 Yoga

From ThinkWiki
Jump to: navigation, search
NOTE!
This is based on the x86-64 workstation version of Fedora 27 with the default GNOME desktop. Your experience with a different edition may be different.
Help needed
Not all models of this ThinkPad are equal, you may have a different WiFi adapter or display, or some options I did not have. If you tested them, please add their status down below.

Firmware Update!

The issues you may encounter with touch and pen input on the X1 Yoga likely are due to a firmware issue. Lenovo has issued an updated firmware [1]. With this update the touch and pen input is stable. Only issue is that the firmware update needs to run from Windows.

And while your at it, you should also make sure you have the latest Intel Management Engine firmware, and the latest BIOS update

New in this release

New in this Fedora release, with regards to this model ThinkPad is the following;

  • Pen input (Wacom) now works in xwayland!
  • Touchpad and Trackpointer are now disabled when the ThinkPad is in tablet mode
  • Keyboard light OSD works

Issues fixed though updates

  • Pen input in Xwayland now works with the updated xorg-x11-server-Xwayland package
  • brightness sensor causing syslog to get spammed with PAM errors is fixed

Success Chart - Out of the box experience

Item Working Notes
Installation Local CD/DVD install unknown did not test
Network Installation unknown did not test
USB Installation yes did not test
Display - Intel HD Graphics Laptop Screen yes
VGA unknown I do not have the VGA OneLink+ dongle
Displayport unknown did not test
HDMI yes
Power Management Software Suspend (hibernate) unknown
Suspend to Memory (ACPI sleep) yes
Intel HD Audio yes
Web Cam yes
Wireless WiFi - Intel 8260 AC yes
WiFi - Intel 18260 AC + WiGig unknown
Bluetooth 4.1 yes
WWAN - Sierra Wireless EM7455 unknown
WWAN - Huawei 4G unknown did not test, but is detected
Input Keyboard yes
TrackPoint yes
TouchPad yes
Extra keys yes see ThinkPad Extra keys section below
Fingerprint reader no does not work. See here for a reverse engineering effort
Pen Pro (Wacom) yes Pen works and is supported
Touch screen yes issues resolved after touch firmware update
Automatic screen rotation yes sensor works and is supported.
Ambient light sensor yes sensor works and is supported, although seems to change brightness a lot.
Ports Intel Ethernet yes via OneLink+ dongle or OneLink+ dock
MicroSD reader yes
USB yes
TPM unknown did not test, but tpm kernel modules are being loaded
Docking yes OneLink+ dock works fine

Tested and Verified on Fedora 27

Information in this section has been tested and verified using Fedora 27.

BIOS

In the BIOS (F1 to enter during boot), be sure to disable secure boot.

Security > Secure Boot > Secure Boot = Disabled

Also, if your planning to run any kind of virtual machines, make sure you enable the CPU virtualization support.

Security > Virtualization > Intel (R) Virtualization Technology = Enabled

And while your in the BIOS setup you may also want to immediately change the default Function key behaviour. On this ThinkPad by default the function keys will not work as one would expect. When pressing F1 you do not get F1, but you get Mute. To get F1 you need to press Fn-F1 or you first need to enable the FnLk (Fn-ESC). To reverse this behaviour back to how to should be, change the setting in the BIOS.

Config > Keyboard/Mouse > F1-F12 as Primary Function = Enabled

Installation

Nothing special, you can follow the generic Fedora install instructions.

Configuration

Kernel

No special configuration needed.

However, you may want to force disable the screen rotation and Ambient light sensor by blacklisting the hid_sensor_als driver. The reason for this is a bug effecting Fedora that is not specific to this ThinkPad, and effects any system with a similar sensor where your syslog will get filled with endless backlight error messages. The bug report for this is here: https://bugzilla.redhat.com/show_bug.cgi?id=1322588

Wayland

This is the default starting with Fedora 25. For the most part works fine, but there are still a couple of issues that are not specific to this ThinkPad.

Mostly to do with software that does screen sharing (VNC and the like), clipboard content lost when closing source application, etc. A list of outstanding issues to do with Wayland can be found here: https://fedoraproject.org/wiki/Wayland_features

X Server

Works out of the box, but is no longer the default.

If you have the HiDPI display option, it brings with it a whole lot of issues. Most of them are covered here; ArchLinux HiDPI.

Basically everything is quite large as it tries to scale everything 2x when a HiDPI display is detected. In fact a bit too large to my liking. On the archlinux website there are some hints and tips on how to scale things down a bit again, but it is really a hack and far from ideal. After experimenting with various options, I decided to use the default 2x scaling in Gnome, but change the zoom option in the webbrowser to scale everything a bit smaller since that is what I use most.

Also having a HiDPI primary display causes everything on external non-HiDPI displays to appear huge as they will receive the same scaling factor. This is a limitation of the X11 windowing system. The solution would be to switch to a Wayland desktop which is able to handle multiple displays with various DPI settings.

Touchscreen & Pen

It is essential that you apply the Lenovo Touch firmware update for the X1 Yoga. Without this update the Pen and Touch is flaky and may stop working even by such simple actions as locking the screen.

However, while Fedora 27 finally enables Pen input in xwayload, it still does not work properly until you update to the latest xorg-x11-server-Xwayland from the updates repository.

ThinkPad Extra keys

ThinkPad keys are handled by a mixture of the thinkpad_acpi, acpi button, acpi dock and acpi video drivers.

Key Function Handled by Event Works Notes
FnESC FnLk unknown yes Locks Fn key state
FnF1 Mute yes yes
FnF2 Volume - yes yes
FnF3 Volume + yes yes
FnF4 Mic Mute yes yes
FnF5 brightness down yes yes
FnF6 brightness up yes yes
FnF7 presentation mode unknown yes Cycles through External Only, mirror and dual display
FnF8 Airplane mode yes yes Activates and deactivates airplane mode.
FnF9 Settings yes yes Opens Gnome settings panel
FnF10 Find yes yes Opens Gnome find
FnF11 ? unknown unknown Does not seem to do anything
FnF12 ? yes yes Opens Gnome Places
FnSpace keyboard light - yes yes
Power Power button acpi button yes yes Need to press button for ~1 second to trigger a Suspend event.
Volume keys on side Volume yes yes
Lid Lid button acpi button yes yes Triggers suspend event