Slackware Linux on an Asus UX21A

Installing Slackware GNU/Linux on an Asus UX21 Ultrabook


I switched to an Asus UX21A after my old 11 inch sony laptop committed suicide. The device is well built and Linux runs very well on this machine.

Hardware support matrix overview

X.orgWorks out of the box. (Ext. monitor not tested)
SoundWorks out of the box.
ACPI/SuspendWorks in recent kernels
BluetoothWorks fine
CameraReported to work (didn't test)
TouchpadWorks fine, needs some config tweaks

Installing Slackware64 with an UEFI bootstick

Installing Slackware on UEFI hardware is surprisingly easy. The first step is to create an UEFI bootstick. Grab one of your USB Keys (> 4GB if you also would like to store the dvd image there) and follow these instructions:
Power on your laptop and hit ESC to enter the BIOS, navigate to Security and disable Secure boot:

Save your changes and boot from the USB stick. Remember that you must create GPT partitions since you are using an EFI machine! (use 'gdisk' for this). Also remember that you'll need an EF00 partition to store your bootloader! (/dev/sda1 is alread correctly labeled. If you keep it without using windows: Feel free to remove all contents of the partition)

Installing ELILO

After the installation finished but before rebooting, mount the EFI system partition to /boot and drop the ELILOX64.EFI binary and your kernel into the EFI directory.
# mkdir /boot/EFI
# cp /some/where/ELILOX64.EFI /boot/EFI/ELILOX64.EFI
# cp /some/where/bzImage /boot/EFI/bzImage

You should also create a configuration file for elilo, my config looks like this:
# cat /boot/EFI/elilo.conf

append="root=/dev/sda2 ro drm.vblankoffdelay=1 i915.semaphores=1 acpi_osi=\"!Windows 2012\""
The acpi_osi entry is required to get the screen brightness hotkeys working correctly

Unplug your USB key and reboot into the BIOS. Navigate to the boot config and create a new boot option for ELILO.

Note that the BIOS tells you to specify the path as fs0:\EFI — this is WRONG!

Upgrading the Kernel

Your machine should now boot and most things should be working out of the box... but the kernel included in Slackware 14.0 is already old, you should therefore upgrade to the latest kernel as soon as possible. I'm using Linux 3.8.3 on my machine without any issues. You can download my kernel .config from here.


LID detection (sleep)

Suspend to RAM works fine, but you must tell Slackware to do something with the 'lid' ACPI event :-). The lid event should be handled in /etc/acpi/, my copy looks like this:

Button backlight

I hate it. You can disable (or control it) via /sys/class/backlight/intel_backlight/brightness

Volume keys

Pushing the keys will trigger XF86Audio* events - your Window Manager should be able to handle them.


The default configuration of the touchpad is somewhat strange (no right click). This configuration file will fix things:

This will give you real right- and left- mouse keys. The middle mouse button can be pressed by tapping on the touchpad with two fingers.