Dell XPS 13

This post will show you how install openSUSE’s rolling release, Tumbleweed, on the Dell XPS 13 9350 FHD.

Update 2016–06–30: Bios 1.4.4 is out.

Update 2016–06–22: The kernel flag is not needed anymore since kernel 4.6 which was introduced around Tumbleweed version 20160612.

Update 2016–05–04: Added a section to fix the sound issues when using headphones.

Preparation

  1. Create a recovery USB in case you want return the machine to it’s original state.

  2. Get yourself a copy of openSUSE Tumbleweed.

  3. Create a bootable USB. There are instructions for the Linux, Windows and OS X.

Update the BIOS

Firmware update

Warning: Do not reboot the machine when the BIOS update is running!

  1. Download the latest BIOS update (1.3.3 at the time of writing).
  2. Save it under /boot/EFI.
  3. Reboot the machine.
  4. Press F12 and select BIOS update.

Installation

  1. Reboot the machine.
  2. Press F12 and configure to use Legacy BIOS and reboot.
  3. Boot from the Tumbleweed USB key and follow the installer instructions until you get to the partitioning stage.
  4. Remove all partitions and create an MSDOS partition table.
  5. Add your desired partitions inside the just created partition table. In my case I have a root, a swap and a home partition.
  6. Finish the installation process.

Fixing the flickering display

Note: This issue was fixed on kernel 4.6, here is the bugzilla link.

There is a reported issue that causes your screen to flicker. Until the fix gets merged into the kernel you can do this hack:

  1. Inside /etc/default/grub add the kernel flag i915.enable_rc6=0
  2. grub2-mkconfig -o /boot/grub2/grub.cfg
  3. Restart your machine.

Fixing the sound when using headphones

When using headphones you will notice a high pitch when no sound is being played and a loud cracking sound when starting/stopping sound from an application.

First fix the issue with the high pitch by setting the microphone boost volume.

amixer -c 0 cset 'numid=10' 1

To fix the problem with the cracking sound the only fix that I’ve found so far is to disable the SOUND_POWER_SAVE_ON_BAT option on tlp.

augtool set /files/etc/default/tlp/SOUND_POWER_SAVE_ON_BAT 0

You will need to reapply the battery settings for changes to take effect and set it up to be started at boot time.

systemctl enable tpl.service --now

Have a lot of fun…