Getting Fedora 23 working on an Asus Zenbook UX305CA (Intel Skylake)

I recently acquired a shiny new Asus Zenbook UX305CA to replace my old UX32A which had been dying a slow death for the past year.

Excitedly, I put the latest Fedora release (23) on the computer, using the Cinnamon spin. While the computer ran Fedora, the screen resolution was set at 800x600 with no other options.

The issue? The Intel Skylake chip in the computer wasn’t supported by the kernel that Fedora 23 ships with (kernel version 2.3). Like many linux users with new laptops I’ve found myself in a bit of an adventure with the new skylake chip. I thought I’d write up how I eventually got Fedora 23 working on this computer for the sake of those following the same path.

To get linux working with kernel 2.3, I found the Arch Wiki invaluable:

  • I needed the kernel boot argument: i915.preliminary_hw_support=1
  • And then you set xorg.conf as described in the Arch Wiki
    Once both of those were done my computer was working, but without hardware acceleration. The next step was to install kernel 4.4, which supports Skylake.

  • You’ll want to add the repository where Fedora keeps the latest kernel versions: I found 4.4 in kernel-vanilla-stable (see instructions here)

  • Then, once I tried booting with kernel-4.4, I got an error at boot: “double free at 0x(address) Aborted. Press any key to exit“. To get rid of the error, I found I had to temporarily disable the validation steps of the new kernel as described in comment 18 on the bugzilla report
  • The mokutil utility will ask you to set a password for altering safe boot. Write it down. When you reboot it will ask for the password on a character by character basis, where the order of the characters is random. I wound up failing this the first time because I assumed the password should be 0-indexed; it’s actually 1-indexed.
  • Once I had insecure boot turned on, I could successfully boot kernel-4.4! But cinnamon informed me that software rendering was still on. To solve this, I had to undo what I’d done to make kernel-4.2 work: take out the i915.preliminary_hw_support=1 and set xorg.conf to what is recommended for Intel graphics in general rather than the Skylake bandaid (you just take out the options line).
    Once all that was done, the computer’s working quite nicely!