Translation(s): none
DebianOn is an effort to document how to install, configure and use Debian on some specific hardware. Therefore potential buyers would know if that hardware is supported and owners would know how get the best out of that hardware. The purpose is not to duplicate the Debian Official Documentation, but to document how to install Debian on some specific hardware. If you need help to get Debian running on your hardware, please have a look at our user support channels where you may find specific channels (mailing list, IRC channel) dedicated to certain types of hardware. |
Models covered: DELL XPS 13 9343 (Early 2015)
Debian version: 8.0
Overall Status
Core Components |
||
Boot Standard Kernel: |
|
|
Detect hard drives: |
|
|
Extra Features |
||
CPU Frequency Scaling |
|
|
Hibernation |
[?] |
|
Sleep / Suspend |
|
|
Xorg |
|
|
- OpenGL |
|
|
- Resize-and-Rotate(randr) |
[?] |
|
Switch to External Screen |
[?] |
|
Mouse |
|
|
- Built-in (Touchpad) |
|
|
Wireless/Wifi |
|
|
Bluetooth |
|
|
Webcam |
|
|
Keyboard's Hotkeys |
|
Legend :
= OK ; Unsupported(No Driver) ; = Error (Couldn't get it working); [?] Unknown, Not Test ; [-] Not-applicable
= Configuration Required; = Only works with a non-free driver and or firmware
Description
This model comes in two options: with Windows 8.1 or with Ubuntu 14.04, which is called Dell XPS 13 Developer Edition. This is a very nice ultrabook which is able to run Debian pretty well. It ONLY requires one non-free firmware to fully operate (the wifi), no extra privative drivers required. The only major tuning it needs is about the Intel driver, whose current Debian 8 version doesn't support Broadwell yet.
Important Note
Before installing Debian, update the BIOS to version A02 or later. That fixes some major bugs with trackpad and audio.
To install Debian using the netinst image, you will need a USB/Ethernet adapter, because the Broadcom wifi adapter requires a non-free driver. Some XPS 13 are sold with an Intel wifi adapter though, which works out of the box.
Configuration
Display
Display works quite well out of the box, including brightness controls with the standard Debian kernel. Nevertheless, the current xserver-xorg-video-intel package is outdated and won't enable DRI2, hence causing severe performance issues.
The xserver-xorg-video-intel package in the backports repository supports the Broadwell chipset in this laptop.
Audio
Debian 8 ships with kernel 3.16. Audio will work fine, but mic won't. You need to rebuild your kernel with the following two patches:
It is recommended that you build and use a kernel >= 3.19, as newer versions contains several bugfixes for touchpad and other stuff.
Bluetooth
Works, but requires non-free firmware to be installed from the Windows driver.
Touchpad
The touchpad works well with the standard kernel, but it's recommended that you upgrade to linux >= 3.19.
A standard Debian 8.0 install will result in a touchpad with no right-click functionality (you may have some luck getting it to right-click by using 2 finger tap). To fix that, use the following /etc/X11/xorg.conf.d/50-synaptics.conf
cat <<EOF > /etc/X11/xorg.conf.d/50-synaptics.conf Section "InputClass" Identifier "touchpad" Driver "synaptics" MatchIsTouchpad "on" # Enable clickpad/multitouch support Option "ClickPad" "true" # Middle-button emulation is not supported Option "EmulateMidButtonTime" "0" # Define right soft button at the bottom Option "SoftButtonAreas" "60% 0 82% 0 40% 59% 82% 0" EndSection EOF
On Debian "stretch" the new "libinput"-Driver is used. Unfortunately, multitouch is disabled by default. To enable it, first make sure that "xserver-xorg-input-multitouch" is installed. Then, enable multitouch by installing the following configuration file:
cat <<EOF > /etc/X11/xorg.conf.d/30-touchpad.conf Section "InputClass" Identifier "MyTouchpad" MatchIsTouchpad "on" Driver "libinput" Option "Tapping" "on" EndSection EOF
Power Management
Suspension works perfect with Linux 4. Hibernation is untested
Battery can last about 5-6 hours with QHD+ display, 70% brightness and normal usage.
Powersaving
You can enhance your battery duration by installing tlp package. Other infos are available here : http://linrunner.de/en/tlp/docs/tlp-linux-advanced-power-management.html
With kernel 4.1 and tlp, the idle power usage is reduced to ~3.5 W with the following kernel parameters:
pcie_aspm=force i915.enable_fbc=1 i915.enable_rc6=7
You can also enable PSR support by adding i915.enable_psr=1 as another parameter reducing power usage but this could cause flickering.
To add those additional kernel parameters, edit /etc/default/grub and append the parameters to the GRUB_CMDLINE_LINUX_DEFAULT. After saving the file, run update-grub command and reboot.
WiFi
Most configurations feature the Dell DW1560 802.11ac adapter (Broadcom BCM4352). Some higher-end models do not use the Dell-branded adapter but instead use an Intel Wireless 7265. Follow the correct section checking which model you have onboard.
Broadcom BCM4352 Card
Works well BUT you must install broadcom-sta-dkms, which is a non-free driver. Doing so on a minimal install without network connectivity is a bit of a pain. You will need to install:
- binutils_2.25-5_amd64.deb broadcom-sta-dkms_6.30.223.248-3_all.deb bzip2_1.0.6-7+b3_amd64.deb cpp-4.8_4.8.4-1_amd64.deb cpp_4.9.2-2_amd64.deb cpp-4.9_4.9.2-10_amd64.deb dkms_2.2.0.3-2_all.deb gcc-4.8_4.8.4-1_amd64.deb gcc-4.8-base_4.8.4-1_amd64.deb gcc_4.9.2-2_amd64.deb gcc-4.9_4.9.2-10_amd64.deb gcc-4.9-base_4.9.2-10_amd64.deb kmod_18-3_amd64.deb libasan0_4.8.4-1_amd64.deb libasan1_4.9.2-10_amd64.deb libatomic1_4.9.2-10_amd64.deb libc6_2.19-18_amd64.deb libcilkrts5_4.9.2-10_amd64.deb libcloog-isl4_0.18.2-1+b2_amd64.deb libgcc1_4.9.2-10_amd64.deb libgcc-4.8-dev_4.8.4-1_amd64.deb libgcc-4.9-dev_4.9.2-10_amd64.deb libgmp10_6.0.0+dfsg-6_amd64.deb libgomp1_4.9.2-10_amd64.deb libisl10_0.12.2-2_amd64.deb libitm1_4.9.2-10_amd64.deb libiw30_30~pre9-8_amd64.deb libkmod2_18-3_amd64.deb liblsan0_4.9.2-10_amd64.deb libmpc3_1.0.2-1_amd64.deb libmpfr4_3.1.2-2_amd64.deb libquadmath0_4.9.2-10_amd64.deb libstdc++6_4.9.2-10_amd64.deb libtsan0_4.9.2-10_amd64.deb libubsan0_4.9.2-10_amd64.deb linux-compiler-gcc-4.8-x86_3.16.7-ckt11-1+deb8u2_amd64.deb linux-headers-3.16.0-4-amd64_3.16.7-ckt11-1+deb8u2_amd64.deb linux-headers-3.16.0-4-common_3.16.7-ckt11-1+deb8u2_amd64.deb linux-headers-amd64_3.16+63_amd64.deb linux-image-3.16.0-4-amd64_3.16.7-ckt11-1+deb8u2_amd64.deb linux-kbuild-3.16_3.16-3_amd64.deb linux-source-3.16_3.16.7-ckt11-1+deb8u2_all.deb lsb-base_4.1+Debian13+nmu1_all.deb make_4.0-8.1_amd64.deb wireless-tools_30~pre9-8_amd64.deb zlib1g_1.2.8.dfsg-2+b1_amd64.deb
NOTE: If you upgrade the kernel to 4.1.4 or higher, the wl module will not compile anymore. Instead, install and compile broadcom-sta-source from stretch.
Intel 7265 Card
Install apt-get install firmware-iwlwifi. Reboot or run modprobe -r iwlwifi ; modprobe iwlwifi to make it work instantly.
NOTE: If you upgrade the kernel to a version above 4, the module will not work. Download the latest driver from here http://www.intel.com/support/wireless/wlan/sb/CS-034398.htm (look for Intel® Dual Band Wireless-AC 7265, Intel® Dual Band Wireless-N 7265, Intel® Wireless-N 7265 device). Unzip the file wherever you want. Then, copy the available ".ucode" files in /lib/firmware. Just for an example:
cp iwlwifi-7265D-14.ucode /lib/firmware cp iwlwifi-7265-14.ucode /lib/firmware
Reboot and you are ready to go.
SSD
Follow SSDOptimization for SSD configurations.
Dual Booting with Windows
Time setting
If you are dual-booting with Windows, you'll get wrong time in Windows after that you used Debian. That's because by default Debian uses local time while Windows relies on UTC time. To fix this, install sudo apt-get install nptdate and then change "LOCAL" to "UTC" in the file /etc/adjtime
Audio issues
If you are dual-booting with Windows audio may not work when you switch between Linux and Windows. The sound chipset, a Realtek ALC3263, has got a "dual-mode", meaning it supports both the HDA standard and the I2S standard. The embedded controller in the XPS 13 uses the ACPI _REV value provided by the OS you use to determine which mode the sound chipset should be initialized in at boot. Debian uses HDA mode because I2S is still not supported (there will be updates after 4.2 kernel). For this reason you will have to do a cold boot twice before HDA sound will work in Linux and vice-versa.
System Summary
lspci
00:00.0 Host bridge [0600]: Intel Corporation Broadwell-U Host Bridge -OPI [8086:1604] (rev 09)
00:02.0 VGA compatible controller [0300]: Intel Corporation Broadwell-U Integrated Graphics [8086:1616] (rev 09)
00:03.0 Audio device [0403]: Intel Corporation Broadwell-U Audio Controller [8086:160c] (rev 09)
00:04.0 Signal processing controller [1180]: Intel Corporation Broadwell-U Camarillo Device [8086:1603] (rev 09)
00:14.0 USB controller [0c03]: Intel Corporation Wildcat Point-LP USB xHCI Controller [8086:9cb1] (rev 03)
00:16.0 Communication controller [0780]: Intel Corporation Wildcat Point-LP MEI Controller #1 [8086:9cba] (rev 03)
00:1b.0 Audio device [0403]: Intel Corporation Wildcat Point-LP High Definition Audio Controller [8086:9ca0] (rev 03)
00:1c.0 PCI bridge [0604]: Intel Corporation Wildcat Point-LP PCI Express Root Port #1 [8086:9c90] (rev e3)
00:1c.3 PCI bridge [0604]: Intel Corporation Wildcat Point-LP PCI Express Root Port #4 [8086:9c96] (rev e3)
00:1d.0 USB controller [0c03]: Intel Corporation Wildcat Point-LP USB EHCI Controller [8086:9ca6] (rev 03)
00:1f.0 ISA bridge [0601]: Intel Corporation Wildcat Point-LP LPC Controller [8086:9cc3] (rev 03)
00:1f.2 SATA controller [0106]: Intel Corporation Wildcat Point-LP SATA Controller [AHCI Mode] [8086:9c83] (rev 03)
00:1f.3 SMBus [0c05]: Intel Corporation Wildcat Point-LP SMBus Controller [8086:9ca2] (rev 03)
00:1f.6 Signal processing controller [1180]: Intel Corporation Wildcat Point-LP Thermal Management Controller [8086:9ca4] (rev 03)
01:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5249 PCI Express Card Reader [10ec:5249] (rev 01)
02:00.0 Network controller [0280]: Broadcom Corporation BCM4352 802.11ac Wireless Network Adapter [14e4:43b1] (rev 03)
lsusb
lsusb -v 2>/dev/null | grep -E '\<(Bus|iProduct|bDeviceClass|bDeviceProtocol)'
Bus 002 Device 004: ID 0c45:670c Microdia bDeviceClass 239 Miscellaneous Device bDeviceProtocol 1 Interface Association iProduct 1 (Bus Powered) Bus 002 Device 003: ID 04f3:20d0 Elan Microelectronics Corp. bDeviceClass 0 (Defined at Interface level) bDeviceProtocol 0 iProduct 14 Bus 002 Device 002: ID 0a5c:216f Broadcom Corp. bDeviceClass 255 Vendor Specific Class bDeviceProtocol 1 iProduct 2
USB Host controllers entries (without OHCI, UHCI, EHCI) are removed too.
Resources
Useful Links
Credits