Dell XPS 13-L321X Ultrabook

This is an article about running Gentoo on an Dell XPS 13 Ultrabook.

Laptop Specifications
Hardware specs may vary. These are the specs for the model XPS 13 Ultrabook:
 * Intel Core i5-2467M 1.6GHz to 2.3GHz or i7-2637M 1.7GHz to 2.9GHz, 3MB cache
 * 4-8GB Dual Channel DDR3 1333MHz
 * Intel HD Graphics 3000-4000 (on-CPU)
 * High Definition Audio with Waves MaxxAudio 4
 * 13.3in TFT LCD Widescreen screen (1366x768 or 1920x1080)
 * Samsung PM830 SATA 3 128GB or 256GB mSATA SSD Hard Disk
 * 1x USB 2.0 ports and 1x USB 3.0 ports
 * mini-DisplayPort output
 * Intel Centrino Advanced-N 6230 802.11 a/g/n with Intel Smart Connect Technology + Bluetooth 3.0

Printout of lspci:

Printout of lsusb (builtin devices, no external devices connected):

Printout of lsmod (builtin devices, no external devices connected):

Information from :

USB 3 Support

 * Compile the xhci-hcd driver as module.

N.B. A kernel version 3.3 at least is required for the USB 3 support.

Drives and Storage

 * Hard Drive controller works using ahci driver in the kernel.

Graphics Chip
There is an issue with screen brightness which cannot be adjustable. It is possible to workaround it with the following command:

Use a script to run it at start up.

As well as after hibernate and suspend.

Both scripts need to be executable.

WLAN Card
You'll also need the firmware:

Webcam
The webcam will work using the v4l2 driver (tested) and sunplus driver (untested).

Test it out with mplayer:

Kernel
You need USB and/or PC-Card support. Also you need to activate the following kernel options:

Service
You can now start bluetooth:

To start bluetooth at boot time, add it your default runlevel:

Noisy fan
On the core i7 model, the fan is running too often and too early. A bios upgrade resolved the issue. http://www.dell.com/support/drivers/us/en/19/DriverDetails/DriverFileFormats?DriverId=C0VG5&FileId=2902722114&productCode=xps-13-l321x&urlProductCode=False

Touchpad
The TouchPad is based on a Cypress firmware which has a new driver in development (as in June 2012 and kernel 3.3) thanks to the Sputnik project. In order to get the multi touch support, you need to patch your kernel by hand.

Go to your kernel source directory:

Download the patches (tested on 3.8.2):

Apply them: