As I begin to transition away from my current job, I figured I’d take advantage of my little IBM discount on Lenovo products and order myself a snappy new laptop. I chose a Lenovo Yoga 900 and was very impressed immediately by the size and quality of the product. And, of course, I immediately wanted to get rid of Windows.
I had a Ubuntu GNOME 15.10 image already on my USB key, so I simply needed to figure out how to get to the BIOS or Boot Menu. Turns out there, is a small button on the right side of the Yoga 900, called the Novo button, which when used to power on the system allows you to access the BIOS menus. Worked like a charm!
Out of the box, Ubuntu 15.10 installed fine, although the /boot partition selected by the auto-partitioner is so small as to be useless if you want to actually build multiple kernels on the system (and you are going to need to for 15.10!). So I resized it up to 1GB and moved on.
Most of the basic hardware worked, except:
So, maybe not “most” in some sense, but hey.
Luckily, the wireless fixes were already upstream, so it was just a matter of putting an appropriate .deb from http://kernel.ubuntu.com/~kernel-ppa/mainline/ on the USB key and installing it. Rebooting and I had wireless. Note, the reason for this is because the Yoga 900 does not have a hardware rfkill switch like some Lenovo products do. So without a quirk for the Yoga 900, the kernel was interpreting the rfkill switch as always being on, and failing to enable the wireless.
With wireless working, I could do my normal
apt-get update; apt-get upgrade
to pull in any fixes since I made my USB key. Since I wasn’t going to be currently using the Ubuntu-provided linux-image-generic kernels, I went ahead and removed those packages first, to minimize the download size.
To get the touchscreen and touchpad working, I needed to apply the 16-patch series posted at https://lkml.org/lkml/2015/11/30/441. I git-cloned Linus’ tree and applied the series, building a 4.4-rc4-based tree. That series is planned for v4.5, btw, so the patching should only be necessary for one more cycle.
Booting into that kernel, the touchscreen and touchpad worked! I proceeded to remove the kernel from the PPA, since it wasn’t fully functional, and now I’ve got a pretty nice setup.
Remaining on my list:
- Screen (auto-)rotation
- Paper reading mode
- Fixing the resolution in GRUB, terminals and browsers to take advantage of the nice screen (but keep things readable!)
I also purchased a new external monitor and USB docking station from Dell. Based upon my reading of the specs, I think they should work, once I get a USB-C (the only video output on the Yoga 900) to standard USB adapter (the docking station and monitor both came with the rest of the cables). That’ll be my next post!