Installing Fedora 25 on a ThinkPad X1 Yoga

From ThinkWiki
Jump to: navigation, search
NOTE!
This is based on the x86-64 workstation version of Fedora 25 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.

Update!

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

Note, this does not fix the pen input in Wayland, that is a totally different issue and effects every Wacom device with Wayland right now. While wayland supports tablet devices, the issue is that that only works in combination with GTK3 applications today. Any applications using GTK2, QT or other toolkits will use xwayland, which does not support tablet devices. This including GIMP, Firefox, Chrome, etc. Not even the wacom settings program has been updated for wayland.

In addition, screen rotation and the brightness sensor work once the 4.9 kernel update is installed.

New in this release

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

  • Wayland is the default and works better then ever, but still not perfect...
  • intel_pstate no longer needs to be disabled
  • Pen input broken on xWayland [2]
  • Fn-F8 now gives an Airplane mode OSD, but pressing the button a second time does not disable it.

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 partial Yes, but does not get disabled in tablet mode!
TouchPad partial Yes, but does not get disabled in tablet mode!
Extra keys yes see ThinkPad Extra keys section below
Fingerprint reader no does not work
Pen Pro (Wacom) yes works in Xorg, very limited support in wayland
Touch screen yes issues resolved after touch firmware update
Automatic screen rotation yes works with the 4.9 kernel update
Ambient light sensor yes works with the 4.9 kernel update
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 25

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

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

Wayland

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

For one, the Pen and Touch does not work in Wayland mode. Also window placement with full-screen programs on a multi-monitor setup is still problematic. But the list of issues is getting shorter with every new update.

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.

Second of all, when logging into the Gnome desktop you may get a message that the Wacom touchscreen and pen are not recognised. This issue is resolved if you have installed the updates, in particular the libwacom-data update.

Also when using the default Wayland desktop, the pen does not work at all for applications relying on xwayland, which are the majority. Even the Wayland settings app will claim no Waycom device is found. This is a known issue. The solution for now is to use Gnome on Xorg.

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 partial Activates airplane mode, but does not disable it!
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 - unknown yes no OSD.
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