https://wiki.archlinux.org/api.php?action=feedcontributions&user=Damige&feedformat=atomArchWiki - User contributions [en]2024-03-28T11:38:45ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=Dell_XPS_13_(9360)&diff=468481Dell XPS 13 (9360)2017-02-17T21:40:46Z<p>Damige: /* NVME Power Saving Patch */ added details</p>
<hr />
<div>[[Category:Dell]]<br />
[[ja:Dell XPS 13 (9360)]]<br />
{| class="wikitable" style="float: right;"<br />
| '''Device''' || '''Status''' || '''Modules'''<br />
|-<br />
| Video || {{G|Working}} || i915<br />
|-<br />
| Wireless || {{G|Working}} || ath10k<br />
|-<br />
| Bluetooth || {{G|Working}}|| btusb<br />
|-<br />
| Audio || {{G|Working}} || snd_hda_intel<br />
|-<br />
| Touchpad || {{G|Working}} || ?<br />
|-<br />
| Webcam || {{G|Working}} || uvcvideo<br />
|-<br />
| USB-C / Thunderbolt 3 || {{G|Working}} || ?<br />
|-<br />
| Wireless switch || {{G|Working}} || intel_hid<br />
|-<br />
| Function/Multimedia Keys || {{G|Working}} || ?<br />
|}<br />
<br />
The Dell XPS 13 Late 2016 (9360) is the fourth-generation model of the XPS 13 line. The laptop is available since October in both a standard edition with Windows installed as well as a Developer Edition with Ubuntu installed. There is no hardware difference between them. Just like the older versions ([[Dell XPS 13 (9333)]], [[Dell XPS 13 (9343)]]), [[Dell XPS 13 (9350)]]) it is available in different hardware configurations. This fourth gen model includes Intel's Kaby Lake CPU and configurable with up to 16GB LPDDR 1866 MHz RAM and a 1TB PCI SSD. It will now also be available in Rose Gold. Prior to previous information it won't be available with LPDDR 2133 MHz RAM.<br />
<br />
The installation process for Arch on the XPS 13 does not differ from any other PC. For installation help, please see the [[Installation guide]] and [[UEFI]]. This page covers the current status of hardware support on Arch, as well as post-installation recommendations.<br />
<br />
As of kernel 4.5, the Intel Kaby Lake architecture is supported.<br />
<br />
<br />
== Content adaptive brightness control ==<br />
In the XPS 13 the display panels (both FHD and QHD+) come with adaptive brightness embedded in the panel firmware, this "content adaptive brightness control" (usually referred to as CABC or DBC) will adjust the screen brightness depending on the content displayed on the screen and will generally be found undesirable, especially for Linux users who are likely to be switching between dark and light screen content. Dell has issued a fix for this however it is only available to run in Windows and for the QHD+ model of the laptop so this precaution should be taken before installing Linux, the FHD model of the XPS 13 (9360) cannot be fixed. This is not a problem with the panel but rather a problem with the way the panels are configured for the XPS 13, as the same panel exists in the Dell's Latitude 13 7000 series (e7370) FHD model but with CABC disabled. The fix is available directly from [http://www.dell.com/support/home/de/de/debsdt1/Drivers/DriversDetails?driverId=20JWV&fileId=3574543510&osCode=WT64A&productCode=xps-13-9360-laptop&languageCode=ge&categoryId=AP Dell].<br />
<br />
== NVM Express SSD ==<br />
=== NVME Power Saving Patch ===<br />
<br />
Andy Lutomirski has created a patchset which fixes powersaving for NVME devices in linux. Currently, this patch is not merged into mainline yet. Until it lands in mainline kernel use the AUR or REPO linked below. <br />
{{App|Linux-nvme|Mainline linux kernel patched with Andy's patch for NVME powersaving APST.|https://github.com/damige/linux-nvme|{{AUR|linux-nvme}}}} (check out [http://linuxnvme.damige.net/] for compiled packages)<br />
<br />
== Video ==<br />
The video should work with the {{ic|i915}} driver of the current {{Pkg|linux}} kernel. Consult [[Intel graphics]] for a detailed installation and configuration guide as well as for [[Intel graphics#Troubleshooting|Troubleshooting]].<br />
<br />
=== Module-based Powersaving Options ===<br />
For the HD 620 graphics card the following modules are working: (see [[Intel graphics#Module-based Powersaving Options]])<br />
modeset=1<br />
For modesetting, wasn't default.<br />
<br />
enable_rc6=1 <br />
Works fine, also gives some decent powersaving. Higher levels than 1 do not exist and get changed by the system to 1.<br />
<br />
enable_fbc=1 <br />
Didn't change so much for energy saving, but helped a lot for the coil whine issue<br />
<br />
enable_guc_loading=1 enable_guc_submission=1<br />
Update the GuC binary blob, you have to download the firmware (https://01.org/linuxgraphics/downloads/firmware) and add in manually to '/usr/lib/firmware/i915/' at the moment.<br />
<br />
enable_huc=1<br />
The binary is allready released, but vanilla kernel doesn't try to load it at the moment. Maybe working for kernel 4.9.9 or 4.9.10.<br />
<br />
enable_psr=2<br />
Enalbe psr level 2 is working while level 1 has a lot of problems, setting it on level 2 doens't give much energy saving at the moment. It's said that 'disable_power_well=0 enable_psr=1' is working in this combination.<br />
<br />
=== Blank screen issue after booting ===<br />
If using "late start" [[KMS]] (the default) and the screen goes blank when loading modules, it may help to add {{ic|i915}} and {{ic|intel_agp}} to the initramfs or using a special [[kernel parameter]]. Consult [[Intel graphics#Blank screen during boot, when "Loading modules"]] for more information about the kernel paramter way and have a look at [[Kernel mode setting#Early KMS start]] for a guide on how to setup the modules for the initramfs.<br />
<br />
== Wireless ==<br />
<br />
The Killer 1535 Wirless Adapter is functional and the ath10k firmware is included in recent linux kernel versions. The connection speed reported by iw is limited to 1-6Mbits/s. However this is just the output being wrong. The real connection speed is not limited to this value.<br />
<br />
Some users are experiencing issues, where the connection is dropped under heavy load but reconnects within a brief moment. This might not be noticed during browsing at all but becomes apparent in online games. There is no know solution so far.<br />
<br />
== Bluetooth ==<br />
<br />
After following the instructions given at [[Bluetooth]] tethering of internet connections via phone works immediately.<br />
<br />
<br />
== Thunderbolt 3 / USB 3.1 ==<br />
<br />
The USB-C port supports Thunderbolt 3, Displayport-over-USB-C and USB power delivery as well as USB 3.1.<br />
<br />
=== Ethernet repeatedly disconnects/reconnects with Dell USB-C adapter (DA200) ===<br />
<br />
Use of a power management package (such as [[TLP]]) may cause the ethernet adapter to repeatedly disconnect and reconnect. If this happens, disable/blacklist USB autosuspend for the ethernet adapter. (On my laptop, this is the device <tt>Bus 004 Device 007: ID 0bda:8153 Realtek Semiconductor Corp</tt> in the output of <tt>lsusb</tt>.)<br />
<br />
Also disabling or reducing power of wifi may help: http://en.community.dell.com/support-forums/network-internet-wireless/f/3324/t/19995423<br />
<br />
=== USB-C Compatibility Chart ===<br />
{| class="wikitable"<br />
| '''Device''' || '''Ports''' || '''Status'''<br />
|-<br />
| [http://www.apple.com/uk/shop/product/MJ1K2ZM/A/usb-c-digital-av-multiport-adapter Apple USB-C Digital AV Multiport Adapter] || USB-C, USB-A, HDMI || {{R|Not Working}}<br />
|-<br />
| [http://www.apple.com/uk/shop/product/MJ262B/A/apple-29w-usb-c-power-adapter?fnode=8b Apple 29W USB-C Power Adapter] || USB-C Power || {{R|Not Working}}<br />
|-<br />
| [https://www.amazon.co.uk/gp/product/B01H3K387Q/ref=oh_aui_search_detailpage?ie=UTF8&psc=1 Aukey USB C Hub HDMI 4 Port] || USB-C, 4xUSB-A, HDMI || {{G|Working}}<br />
|}<br />
<br />
== SATA controller ==<br />
When the SATA-controller is set to {{ic|RAID On}} in Bios, the hard disk (at least the SSD) is not recognized. Set to {{ic|Off}} or {{ic|AHCI}} ({{ic|AHCI}} is recommended) before attempting to install Arch.<br />
<br />
== Touchpad ==<br />
The touchpad has no explicit buttons. The buttons are built into the pads surface. There is a small line printed on the pad separating left from right click button. The pad has a '''middle button''' built in! (works with libinput without any configuration): To issue a middle click, simply press on the middle area right between the virtual left and click buttons - so on the small printed separator line.<br />
<br />
=== Remove psmouse errors from dmesg ===<br />
<br />
If {{ic|<nowiki>dmesg | grep -i psmouse</nowiki>}} returns an error, but your touchpad still works, then it might be a good idea to disable {{ic|psmouse}}. First create a config file:<br />
<br />
# nano /etc/modprobe.d/modprobe.conf<br />
<br />
blacklist psmouse<br />
<br />
Then add this file to {{ic|/etc/mkinitcpio.conf}}:<br />
<br />
...<br />
FILES="/etc/modprobe.d/modprobe.conf"<br />
...<br />
<br />
Rebuild your initial ramdisk image (see [[Mkinitcpio#Image creation and activation]]).<br />
<br />
== Touchscreen ==<br />
The touchscreen works without additional configuration. The bug resulting in a disabled touchscreen after resume was fixed with kernel 4.8.5.<br />
<br />
=== Gestures ===<br />
Refer to [[libinput#Gestures]] for information about the current development state and available methods.<br />
<br />
== Keyboard Backlight ==<br />
By default, the keyboard backlight turns off after 10 seconds of inactivity. Some users might find this too short and annoying.<br />
The delay can be increased (or decreased) by editing this file:<br />
/sys/devices/platform/dell-laptop/leds/dell\:\:kbd_backlight/stop_timeout<br />
<br />
You can also change the brightness (0-2) by editing the following file. This is identical to pressing F10 on your keyboard:<br />
/sys/devices/platform/dell-laptop/leds/dell\:\:kbd_backlight/brightness<br />
<br />
== Firmware Updates ==<br />
Dell provides firmware updates via {{aur|fwupd}}. See [[Flashing BIOS from Linux#fwupd]]. Please note if you have used a bind mount partition for /boot, you will not be able to use the fwupd utility; Instead format a USB as FAT32 and put the bios update .exe on. Reboot into the one-time-boot menu and update the BIOS flash through there.<br />
<br />
<br />
== Troubleshooting ==<br />
<br />
=== EFISTUB does not boot ===<br />
The BIOS does not pass any boot parameters to the kernel. Use a UEFI [[boot loader]] instead.<br />
<br />
=== Not waking from suspend ===<br />
Update the BIOS to 1.0.7 to patch this issue.<br />
<br />
=== Power Drain after waking from standby ===<br />
<br />
Some users recognised ~2W more power consumption after waking up from standby. Go to the UEFI Firmware Settings (tap the F2 key when the Dell logo appears) and uncheck the 'Enable Thunderbolt Boot Support'. You may use {{Pkg|powertop}} or {{AUR|powerstat-git}} to reproduce and check this behaviour yourself. <br />
<br />
=== Popping Sound on headphones/external speakers ===<br />
<br />
Power saving being enabled on the audio chip will cause the hissing and popping to appear. <br />
<br />
Have a look at [[Advanced_Linux_Sound_Architecture/Troubleshooting#Pops_when_starting_and_stopping_playback]] and [[Advanced_Linux_Sound_Architecture/Troubleshooting#Popping_sound_after_resuming_from_suspension]].<br />
<br />
If you are using {{Pkg|tlp}}, it will activate power saving by default when on battery. Edit {{ic|/etc/default/tlp}} and disable it.<br />
<br />
=== Coil Whine ===<br />
<br />
Unfortunately Dell still did not fix this issue and the sound for my model was very loud. The issue seems to be connected to the graphic card. For some users, it is possible to reduce it a lot by activating frame buffer compression "enable_fbc=1" [[Intel graphics#Module-based Powersaving Options]]. The coil whine will then start again under heavy graphic load. For the touchscreen model, this may be very often, due to the high resolution screen. In a similar vein, the display can be run at a lower resolution, again reducing the load on the graphics card.<br />
<br />
== See Also == <br />
<br />
* [https://bbs.archlinux.org/viewtopic.php?id=217865 Arch Forum thread for Dell XPS 13 (9360)]</div>Damigehttps://wiki.archlinux.org/index.php?title=Dell_XPS_13_(9350)&diff=468480Dell XPS 13 (9350)2017-02-17T21:39:51Z<p>Damige: /* NVME Power Saving Patch */ details added</p>
<hr />
<div>[[Category:Dell]]<br />
[[ja:Dell XPS 13 (9350)]]<br />
{{Note|This page refers to the early 2016 model of XPS 13. For the late 2016 model see [[Dell XPS 13 (9360)]].}}<br />
{| class="wikitable" style="float: right;"<br />
| '''Device''' || '''Status''' || '''Modules'''<br />
|-<br />
| Video || {{G|Working}} || i915<br />
|-<br />
| Wireless || {{G|Working}} || brcmfmac<br />
|-<br />
| Bluetooth || {{G|Works after installing firmware}}|| btbcm<br />
|-<br />
| Audio || {{G|Working}} || snd_hda_intel<br />
|-<br />
| Touchpad || {{G|Working}} || ?<br />
|-<br />
| Webcam || {{G|Working}} || uvcvideo<br />
|-<br />
| Card Reader || {{G|Working}} || rtsx_pci<br />
|-<br />
| Wireless switch || {{G|Working}} || intel_hid<br />
|-<br />
| Function/Multimedia Keys || {{G|Working}} || ?<br />
|-<br />
| TPM 1.2/2.0 || {{G|Working}} || tpm<br />
|}<br />
<br />
The Dell XPS 13 2016 (9350) is the third-generation model of the XPS 13 line. The laptop is available in both a standard edition with Windows installed as well as a Developer Edition which only differs in that it comes with Ubuntu installed as well as the Broadcom WiFi card replaced with an Intel WiFi card. Just like the older versions ([[Dell XPS 13 (9333)]] and [[Dell XPS 13 (9343)]]) it can be bought in different hardware configurations.<br />
<br />
The installation process for Arch on the XPS 13 does not differ from any other PC. For installation help, please see the [[Installation guide]] and [[UEFI]]. This page covers the current status of hardware support on Arch, as well as post-installation recommendations.<br />
<br />
As of kernel 4.3, the Intel Skylake architecture is supported.<br />
<br />
== Content adaptive brightness control ==<br />
In the XPS 13 the display panels (both FHD and QHD+) come with adaptive brightness embedded in the panel firmware, this "content adaptive brightness control" (usually referred to as CABC or DBC) will adjust the screen brightness depending on the content displayed on the screen and will generally be found undesirable, especially for Linux users who are likely to be switching between dark and light screen content. Dell has issued a fix for this however it is only available to run in Windows and for the QHD+ model of the laptop so this precaution should be taken before installing Linux, the FHD model of the XPS 13 (9350) cannot be fixed. This is not a problem with the panel but rather a problem with the way the panels are configured for the XPS 13, as the same panel exists in the Dell's Latitude 13 7000 series (e7370) FHD model but with CABC disabled. The fix is available directly from [http://www.dell.com/support/home/uk/en/ukdhs1/Drivers/DriversDetails?driverId=PWD5K&fileId=3505631210&osCode=W764&productCode=xps-13-9350-laptop&languageCode=en&categoryId=AP Dell].<br />
<br />
== BIOS ==<br />
The most convenient way to install Arch Linux is by disabling "Secure Boot" (Secure Boot > Disable). However it is possible to self-sign your kernel and boot with it enabled. For further information have a look at the [[Secure Boot]] article.<br />
<br />
In case you {{ic|efivars}} are not properly set it is most likely due to you not being booted into [[UEFI]]. Should the problem persist be sure to consult the [[UEFI#UEFI Variables]] section.<br />
<br />
=== Updates ===<br />
[http://downloads.dell.com/FOLDER04113001M/1/XPS_9350_1.4.13.exe BIOS update 1.4.13] was released on 2017-02-08. Store the update binary on your EFI partition ({{ic|/boot/EFI}}) or on a USB flash drive, reboot, and choose BIOS Update in the F12 boot menu. This might also help if your machine will not resume after suspend.<br />
<br />
=== Firmware Updates ===<br />
Dell provides firmware updates via Linux Vendor Firmware Service (LVFS). Refer to [[Flashing BIOS from Linux#fwupd]] for additional information. A package is readily available at {{aur|fwupd}}.<br />
<br />
== Thunderbolt 3 / USB 3.1 ==<br />
<br />
The USB-C port supports Thunderbolt 3, Displayport-over-USB-C and USB power delivery as well as USB 3.1.<br />
<br />
In the event of devices not working correctly, ensure that you have updated to the latest BIOS (above) and Thunderbolt firmware (below).<br />
<br />
[http://downloads.dell.com/FOLDER03798029M/1/Intel_TBT3_FW_UPDATE_NVM16_A04_2.16.01.003.exe Thunderbolt 3 Firmware Update 2.16.01.003, A04] was released on 2016-08-10. Unlike the BIOS update, this is a graphical application which must be run in a modern Windows environment (MS-DOS will not suffice).<br />
<br />
Hotplug support for this port requires a [https://bugzilla.kernel.org/show_bug.cgi?id=115121 bug fix] which landed in kernel version 4.7. It also requires the kernel to be built with <tt>CONFIG_PCI_HOTPLUG=y</tt>.<br />
<br />
=== External screen ===<br />
<br />
Support for external screens either using an USB-C to HDMI or USB-C to Mini Display ports adapters may not be working properly. Commonly the screen when plugged is reported to either:<br />
<br />
* display an image for a few milliseconds then switch to a black screen;<br />
* have no image at all;<br />
* being flickering after a few minutes to the extent this is basically unusable.<br />
<br />
Refer to the [https://bbs.archlinux.org/viewtopic.php?id=205147 according Arch Forum entry] for an exhaustive discussion about working adapters and the [http://en.community.dell.com/techcenter/os-applications/f/4613/t/19988851 Dell forum entry].<br />
<br />
== SATA controller ==<br />
When the SATA-controller is set to {{ic|RAID On}} in Bios, the hard disk (at least the SSD) is not recognized. Set to {{ic|Off}} or {{ic|AHCI}} ({{ic|AHCI}} is recommended) before attempting to install Arch.<br />
<br />
=== Dual booting Linux and Windows ===<br />
In order to boot into Windows properly without getting an {{ic|INACCESSIBLE_BOOT_DEVICE}} error with disabled {{ic|RAID}} you must configure Windows to use the {{ic|AHCI}}-speaking SATA storage controller, assuming you used {{ic|AHCI}} for installing Linux. The driver is effectively disabled even though it is installed. Either of the following methods were reported to activate the drivers without reinstallation (your mileage may vary):<br />
<br />
* [http://www.tenforums.com/drivers-hardware/15006-attn-ssd-owners-enabling-ahci-mode-after-windows-10-installation.html booting into safe mode and back]<br />
* [https://samnicholls.net/2016/01/14/how-to-switch-sata-raid-to-ahci-windows-10-xps-13/ Selecting {{ic|Microsoft Storage Spaces Controller}} in Windows Device Manager]<br />
* [http://www.tenforums.com/tutorials/22631-ahci-enable-windows-8-windows-10-after-installation.html Modifying registry entries]<br />
* [http://superuser.com/questions/471102/change-from-ide-to-ahci-after-installing-windows-8/471108#471108 Modifying other registry entries]<br />
<br />
Consult the [https://support.microsoft.com/en-us/kb/2795397 microsoft support] page for additional information. Be aware that some manufactures propagate reinstalling Windows to be the only solution, which it is not.<br />
<br />
== NVM Express SSD ==<br />
=== Cannot find root device ===<br />
The location of the {{ic|nvme}} module for [[wikipedia:NVM_Express|"NVM Express"]] SSD has changed between {{Pkg|linux}} kernel version 4.3 and 4.4. If you experience "cannot find root device" on boot, it may be due to the [https://bugs.archlinux.org/task/47761 {{ic|nvme}} module not being present in {{ic|initramfs}}]. In this case, the following may resolve your issue.<br />
<br />
Edit your {{ic|/etc/mkinitcpio.conf}} file:<br />
...<br />
MODULES="... nvme"<br />
...<br />
<br />
Then update the bootloader.<br />
<br />
# mkinitcpio -p linux<br />
<br />
where {{ic|linux}} is the name of the image loaded on boot. If you installed {{AUR|linux-mainline}} then change that to {{ic|linux-mainline}}.<br />
<br />
=== Note on Mount Options ===<br />
<br />
Using the {{ic|discard}} mount option for your filesystem is not recommended, as mentioned in [[Solid_State_Drives#Continuous TRIM|this warning]] and [https://bbs.archlinux.org/viewtopic.php?pid=1593544#p1593544 the forum]. See also [[Solid State Drives/NVMe#Discards]] for further information.<br />
<br />
=== NVME Power Saving Patch ===<br />
<br />
Andy Lutomirski has created a patchset which fixes powersaving for NVME devices in linux. Currently, this patch is not merged into mainline yet. Until it lands in mainline kernel use the AUR or REPO linked below. <br />
{{App|Linux-nvme|Mainline linux kernel patched with Andy's patch for NVME powersaving APST.|https://github.com/damige/linux-nvme|{{AUR|linux-nvme}}}}<br />
<br />
== Wireless ==<br />
<br />
For the non-developer edition, the built-in Broadcom BCM4350 is now supported in the current {{Pkg|linux}} kernel (as of version 4.4.1-1). The wireless module {{ic|brcmfmac}} also needs the firmware {{ic|brcmfmac4350-pcie.bin}} from the related {{Pkg|linux-firmware}} package.<br />
<br />
The Broadcom adapter does not report its regulatory country and so, by default, the global settings for channels and frequencies will be set. See [[Wireless network configuration#Respecting the regulatory domain]] for more information about how this can be changed.<br />
<br />
== Bluetooth ==<br />
<br />
=== Intel WiFi ===<br />
If your WiFi card supports Bluetooth, then the BT interface should be available out-of-the-box, as the required firmware is included in {{pkg|linux-firmware}}.<br />
<br />
=== Broadcom Wifi ===<br />
Bluetooth should work right away. Load the module {{ic|btusb}} and {{ic|bluetooth}} if it was not already and [[start]]/[[enable]] {{ic|bluetooth.service}}. Refer to [[Bluetooth]] for more information and configuration options.<br />
<br />
==== Wireless headset: strange bluetooth behavior ====<br />
<br />
If your Bluetooth behaves unstable, such as connection loss, stuttering sound. being able to connect but not to listen through it, etc. you probably need the proprietary firmware.<br />
<br />
The Broadcom Bluetooth firmware is not available in the kernel (the same as for the 2015 model [http://tech.sybreon.com/2015/03/15/xps13-9343-ubuntu-linux/ source]), therefore you will have to retrieve it from a Windows [http://downloads.dell.com/FOLDER03272920M/1/9350_Network_Driver_XMJK7_WN32_12.0.1.720_A00.EXE .exe]. You need to extract the {{ic|.exe}} file with {{Pkg|p7zip}} and then convert it to a {{ic|.hcd}} file with ''hex2hcd'' from {{Pkg|bluez-utils}}:<br />
<br />
$ 7z x 9350_Network_Driver_XMJK7_WN32_12.0.1.720_A00.EXE<br />
$ cp Win32/BCM4350C5_003.006.007.0095.1703.hex ./<br />
$ hex2hcd BCM4350C5_003.006.007.0095.1703.hex<br />
# mv BCM4350C5_003.006.007.0095.1703.hcd /lib/firmware/brcm/BCM-0a5c-6412.hcd<br />
<br />
Alternatively, you may simply install {{AUR|bcm4350-firmware}}.<br />
<br />
After a reboot, the firmware should be available for your Bluetooth interface.<br />
<br />
== Video ==<br />
The video should work with the {{ic|i915}} driver of the current {{Pkg|linux}} kernel. Consult [[Intel graphics]] for a detailed installation and configuration guide as well as for [[Intel graphics#Troubleshooting|Troubleshooting]].<br />
<br />
=== Blank screen issue after booting ===<br />
If using "late start" [[KMS]] (the default) and the screen goes blank when loading modules, it may help to add {{ic|i915}} and {{ic|intel_agp}} to the initramfs or using a special [[kernel parameter]]. Consult [[Intel graphics#Blank screen during boot, when "Loading modules"]] for more information about the kernel paramter way and have a look at [[Kernel mode setting#Early KMS start]] for a guide on how to setup the modules for the initramfs.<br />
<br />
=== Linux kernel 4.8 or later power savings ===<br />
<br />
{{warning|The following options of the {{ic|i915}} module taint the kernel, use at your own risks!}}<br />
<br />
====RC6====<br />
{{ic|i915.enable_rc6&#61;1}} seems to be stable, setting the value to a higher number will be ignored is therefore confusing, the deeper GPU power states that this option enables (RC6p and RC6pp) do not exist on gen7+ hardware.[https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/gpu/drm/i915/i915_drv.h#n2862][https://lists.freedesktop.org/archives/intel-gfx/2012-June/018383.html].<br />
<br />
====Panel Self Refresh====<br />
{{ic|i915.enable_psr&#61;1}} allows for some really nice power savings by leaving the package longer in more efficient C-states. However, users experience freezes for a few seconds with this option fairly often, setting the value to [https://patchwork.kernel.org/patch/8182841/ 2 or 3] may yield to similar power savings but without the freezes.<br />
{{ic|i915.disable_power_well&#61;0}} with {{ic|i915.enable_psr&#61;1 i915.enable_rc6&#61;1}} also seems to be a stable configuration for PSR.<br />
<br />
====Frame Buffer Compression====<br />
{{ic|i915.enable_fbc&#61;1}} is stable but does not seem to yield significant power saving results.<br />
<br />
====GuC====<br />
[https://01.org/linuxgraphics/intel-linux-graphics-firmwares GuC] loading with {{ic|i915.enable_guc_loading&#61;1 i915.enable_guc_submission&#61;1}} seems stable too.<br />
<br />
=== Linux kernel 4.3 or earlier ===<br />
<br />
If you are using an older kernel 4.3 or earlier, you also require the kernel parameter {{ic|i915.preliminary_hw_support&#61;1}}, see [[Intel graphics#Skylake support]]. (For later kernels 4.3+ or {{AUR|linux-bcm4350}} the parameter is unnecessary.)<br />
<br />
=== Linux kernel 4.5 or earlier ===<br />
<br />
If you have the newer i7-6560 CPU with Iris 540 graphics, the GPU hangs every few minutes with kernel versions before 4.6. This is probably due to this bug https://bugs.freedesktop.org/show_bug.cgi?id=94161 and can be countered by either disabling DRI in your Xorg configuration:<br />
<br />
{{hc|/etc/X11/xorg.conf.d/20-intel.conf|<br />
Section "Device"<br />
Identifier "Intel Graphics"<br />
Driver "intel"<br />
Option "DRI" "false"<br />
EndSection<br />
}}<br />
<br />
or by adding {{ic|1=i915.enable_rc6=0}} to the kernel boot parameters.<br />
<br />
== Touchpad ==<br />
Only key-presses work out of the box. Installing {{pkg|xf86-input-libinput}} is sufficient for proper mouse support plus it also handles the touchscreen - see [[libinput]] for configuration. Features such as tap-to-click are usually adjustable within the [[desktop environment]].<br />
<br />
Alternatively you may want to install {{pkg|xf86-input-synaptics}} as driver but "it is on maintenance mode and {{pkg|xf86-input-libinput}} must be preferred over" (installation note from the package itself). Plus it may lack the ability to be easily adjustable within your [[desktop environment]] (see [[Dell Studio XPS 13]]). Restarting the X server might be required.<br />
<br />
=== Remove psmouse errors from dmesg ===<br />
<br />
If {{ic|<nowiki>dmesg | grep -i psmouse</nowiki>}} returns an error, but your touchpad still works, then it might be a good idea to disable {{ic|psmouse}}. First create a config file:<br />
<br />
# nano /etc/modprobe.d/modprobe.conf<br />
<br />
blacklist psmouse<br />
<br />
Then add this file to {{ic|/etc/mkinitcpio.conf}}:<br />
<br />
...<br />
FILES="/etc/modprobe.d/modprobe.conf"<br />
...<br />
<br />
Rebuild your initial ramdisk image (see [[Mkinitcpio#Image creation and activation]]).<br />
<br />
=== Gestures ===<br />
<br />
Refer to [[libinput#Gestures]] for information about the current development state and available methods.<br />
<br />
== Sound ==<br />
<br />
=== Hissing/Crackling noises when using headphones ===<br />
<br />
Some people reported white hissing/crackling noises when using headphones. To get rid of them you can run {{ic|alsamixer}} from {{Pkg|alsa-utils}}.<br />
Select your soundcard with F6 and set the headset-gain to 22 (3rd lever from the left) or use the {{ic|amixer}} command:<br />
<br />
$ amixer -c 0 cset 'numid=10' 1<br />
numid=10,iface=MIXER,name='Headphone Mic Boost Volume'<br />
; type=INTEGER,access=rw---R--,values=2,min=0,max=3,step=0<br />
: values=1,1<br />
| dBscale-min=0.00dB,step=10.00dB,mute=0<br />
<br />
Unfortunately [[PulseAudio]] will override the above setting every time you log in/out of your environment (or every time the PulseAudio service is restarted), even if the {{ic|alsa-restore.service}} is enabled at [[start]] up.<br />
<br />
To work around this issue, edit {{ic|/usr/share/pulseaudio/alsa-mixer/paths/analog-input-headphone-mic.conf}} and comment out the section {{ic|[Element Headphone Mic Boost]}}:<br />
<br />
---<br />
#[Element Headphone Mic Boost]<br />
#required-any = any<br />
#switch = select<br />
#volume = merge<br />
#override-map.1 = all<br />
#override-map.2 = all-left,all-right<br />
---<br />
<br />
Similarly in {{ic|/usr/share/pulseaudio/alsa-mixer/paths/analog-input-internal-mic.conf}}, comment out the same section:<br />
<br />
---<br />
#[Element Headphone Mic Boost]<br />
#switch = off<br />
#volume = off<br />
---<br />
<br />
This will prevent PulseAudio to fiddle with the gain setting at all.<br />
<br />
{{Note|Unfortunately, you must make the same modifications every time the PulseAudio package is updated. Additionally, this will entirely disable the internal microphone.}}<br />
<br />
== Microphone ==<br />
{{Note| Not all hardware has the "Digital" channel}}<br />
For ALSA, increase "Digital" channel for microphone to work.<br />
<br />
== TPM ==<br />
<br />
As shipped the Trusted Platform Module (TPM) can be configured easily following the steps at [[Trusted Platform Module]] and requires no otherwise special configuration. Handy packages to use with the TPM are {{AUR|tpm-tools}} and {{AUR|trousers}}.<br />
<br />
=== TPM 2.0 ===<br />
<br />
Originally the Dell XPS 13 (9350) shipped with TPM 1.2 - the TPM chip was configured to support the TPM Standard version 1.2. However, on 6 Jan 2017 Dell released a [http://www.dell.com/support/home/uk/en/ukdhs1/Drivers/DriversDetails?driverId=N8P80 firmware update] (internal version 1.3.1.0_V1) for the TPM chip that converts it to support the feature set of TPM Standard version 2.0. Unfortunately, as of this moment the update cannot be applied through Linux or the BIOS direct flashing capabilities. The only way to install it seems to be to apply it through a running Windows OS. The easiest method is to run a temporary Windows installation on a USB drive, boot into it and run the update from there. {{Note| 1=It should be noted that this update is reversible once applied. To revert back to TPM 1.2 by using a [http://www.dell.com/support/home/us/en/04/Drivers/DriversDetails?driverId=F3J3P firmware update] It also requires that the TPM memory and configuration is completely cleared.}}<br />
{{Note| As for BIOS updates, please make sure the laptop is plugged in to a power source and that power source is stable.}}<br />
<br />
To install the update one can follow the instructions on the above mentioned firmware update page to clear and reset the TPM chip and initiate the update. Users intending to later use the device in Linux, can skip the last steps 11 & 12 from section "Disable TPM Auto Provisioning in Windows". Another option is to just clear the TPM following [http://www.dell.com/support/article/uk/en/ukbsdt1/SLN155219/en this guide] and just run the {{ic|.exe}} file from Windows.<br />
<br />
Once the update succeeds, the Linux kernel should automatically recognise the newly configured TPM device and enable it automatically on next boot. To make use of the now TPM 2.0 chip a couple of packages are worth installing - {{AUR|tpm2.0-tss-git}} and {{AUR|tpm2.0-tools-git}}. To make the TSS resource manager work on boot, a handy systemd service is provided and its variants discussed [https://github.com/01org/TPM2.0-TSS/issues/321 here].<br />
<br />
== CPU slowdown after resume from suspend ==<br />
If you are experiencing a very slow computer after resume from suspend, you may be subject to a bug where your CPU frequency is capped to a very low value. Use {{ic|cpupower frequency-info}} to check. If so, please read [https://bbs.archlinux.org/viewtopic.php?pid=1558948#p1558948 this forum thread] for debug information, and a workaround.<br />
<br />
== lspci and lsusb ==<br />
<br />
{{Accuracy|According links unter [[#See also]] should be sufficient. It is therefore not necessary to list the output here.}}<br />
<br />
The <tt>lspci</tt> and <tt>lsusb</tt> below were take from the following system:<br />
<br />
[ 0.000000] DMI: Dell Inc. XPS 13 9350/0PWNCR, BIOS 1.3.3 03/01/2016<br />
<br />
on kernel:<br />
<br />
Linux marv 4.5.4-1-ARCH #1 SMP PREEMPT Wed May 11 22:21:28 CEST 2016 x86_64 GNU/Linux<br />
<br />
=== lspci ===<br />
<br />
00:00.0 Host bridge: Intel Corporation Skylake Host Bridge/DRAM Registers (rev 08)<br />
00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated Graphics (rev 07)<br />
00:04.0 Signal processing controller: Intel Corporation Skylake Processor Thermal Subsystem (rev 08)<br />
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)<br />
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)<br />
00:15.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 (rev 21)<br />
00:15.1 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #1 (rev 21)<br />
00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)<br />
00:1c.0 PCI bridge: Intel Corporation Device 9d10 (rev f1)<br />
00:1c.4 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1)<br />
00:1c.5 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 (rev f1)<br />
00:1d.0 PCI bridge: Intel Corporation Device 9d18 (rev f1)<br />
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-LP LPC Controller (rev 21)<br />
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)<br />
00:1f.3 Audio device: Intel Corporation Sunrise Point-LP HD Audio (rev 21)<br />
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)<br />
3a:00.0 Network controller: Broadcom Corporation BCM4350 802.11ac Wireless Network Adapter (rev 08)<br />
3b:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader (rev 01)<br />
3c:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller (rev 01)<br />
<br />
[https://gist.github.com/mgalgs/a903e3528f48aa25b5c0b9ae9c09a07f Full output from sudo lspci -v]<br />
<br />
After plugging in a USB-C hub, a number of new PCI devices appear:<br />
<br />
01:00.0 PCI bridge: Intel Corporation Device 1576<br />
02:00.0 PCI bridge: Intel Corporation Device 1576<br />
02:01.0 PCI bridge: Intel Corporation Device 1576<br />
02:02.0 PCI bridge: Intel Corporation Device 1576<br />
39:00.0 USB controller: Intel Corporation Device 15b5<br />
<br />
=== lsusb ===<br />
<br />
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub<br />
Bus 001 Device 004: ID 0c45:670c Microdia <br />
Bus 001 Device 003: ID 04f3:20d0 Elan Microelectronics Corp. <br />
Bus 001 Device 002: ID 0a5c:6412 Broadcom Corp. <br />
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub<br />
<br />
[https://gist.github.com/mgalgs/15fb0d19795f700d60f061f67dddbefc Full output from sudo lsusb -v]<br />
<br />
== See also ==<br />
<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1579113 Arch Forum thread for XPS 13]<br />
* [http://www.dell.com/support/home/us/en/19/product-support/product/xps-13-9350-laptop/drivers Dell XPS 13 9350 driver and firmware updates]</div>Damigehttps://wiki.archlinux.org/index.php?title=Solid_state_drive/NVMe&diff=468479Solid state drive/NVMe2017-02-17T21:39:11Z<p>Damige: /* NVME Power Saving Patch */ added details</p>
<hr />
<div>[[Category:Storage]]<br />
[[ja:ソリッドステートドライブ/NVMe]]<br />
{{Related articles start}}<br />
{{Related|Solid State Drives}}<br />
{{Related articles end}}<br />
<br />
NVM Express (NVMe) is a specification for accessing SSDs attached through the PCI Express bus. As a logical device interface, NVM Express has been designed from the ground up, capitalizing on the low latency and parallelism of PCI Express SSDs, and mirroring the parallelism of contemporary CPUs, platforms and applications.<br />
<br />
== Installation ==<br />
<br />
The Linux NVMe driver is natively included in the kernel since version 3.3. NVMe devices should show up under {{ic|/dev/nvme*}}.<br />
<br />
Extra userspace NVMe tools can be found in {{aur|nvme-cli}} or {{aur|nvme-cli-git}}.<br />
<br />
See [[Solid State Drives]] for supported filesystems, maximizing performance, minimizing disk reads/writes, etc.<br />
<br />
{{Note|It may be needed to add the '''nvme''' module to the [[Mkinitcpio#MODULES|MODULES]] array within {{ic|/etc/mkinitcpio.conf}} to successfully boot into the root filesystem.}}<br />
<br />
== Performance ==<br />
<br />
=== Sector size ===<br />
<br />
See [[Advanced Format#How to determine if HDD employ a 4k sector]].<br />
<br />
=== Discards ===<br />
{{note|Contrary to recommendations for SSDs, '''NVMe devices should not be issued discards'''.}}<br />
<br />
Discards are disabled by default on typical setups that use [[ext4]] and [[LVM]], but other filesystems might need discards to be disabled explicitly.<br />
<br />
Intel, as one device manufacturer, recommends not to enable discards at the filesystem level, but suggests the [[Solid State Drives#Periodic TRIM]] method, or apply ''fstrim'' manually.[https://communities.intel.com/thread/75161?start=0&tstart=0]<br />
<br />
=== Airflow ===<br />
<br />
NVMe SSDs are known to be affected by high operating temperatures and will throttle performance over certain thresholds.[http://www.legitreviews.com/samsung-ssd-950-pro-512gb-nvme-pcie-ssd-review_174096/3]<br />
<br />
=== Testing ===<br />
<br />
Raw device performance tests can be run with {{pkg|hdparm}}:<br />
<br />
# hdparm -Tt --direct /dev/nvme0n1<br />
<br />
== Power Saving APST ==<br />
<br />
=== NVME Power Saving Patch ===<br />
<br />
Andy Lutomirski has created a patchset which fixes powersaving for NVME devices in linux. Currently, this patch is not merged into mainline yet. Until it lands in mainline kernel use the AUR or REPO linked below. <br />
{{App|Linux-nvme|Mainline linux kernel patched with Andy's patch for NVME powersaving APST.|https://github.com/damige/linux-nvme|{{AUR|linux-nvme}}}}<br />
<br />
== References ==<br />
* [http://www.intel.com/content/dam/support/us/en/documents/ssdc/data-center-ssds/Intel_Linux_NVMe_Guide_330602-002.pdf Intel Linux NVMe driver reference]</div>Damigehttps://wiki.archlinux.org/index.php?title=Dell_XPS_13_(9350)&diff=452659Dell XPS 13 (9350)2016-10-01T16:31:47Z<p>Damige: /* NVME Power Saving Patch */ Updated to new release which is version 4</p>
<hr />
<div>[[Category:Dell]]<br />
[[ja:Dell XPS 13 (2016)]]<br />
{{Note|This page refers to the early 2016 model of XPS 13. For the late 2016 model see [[Dell XPS 13 (4th Gen)]].}}<br />
{| class="wikitable" style="float: right;"<br />
| '''Device''' || '''Status''' || '''Modules'''<br />
|-<br />
| Video || {{G|Works after configuration}} || i915<br />
|-<br />
| Wireless || {{G|Works after configuration}} || brcmfmac<br />
|-<br />
| Bluetooth || {{G|Works after installing firmware}}|| btbcm<br />
|-<br />
| Audio || {{G|Working}} || snd_hda_intel<br />
|-<br />
| Touchpad || {{G|Works after configuration}} || ?<br />
|-<br />
| Webcam || {{G|Working}} || uvcvideo<br />
|-<br />
| Card Reader || {{G|Working}} || rtsx_pci<br />
|-<br />
| Wireless switch || {{G|Working}} || intel_hid<br />
|-<br />
| Function/Multimedia Keys || {{G|Working}} || ?<br />
|}<br />
<br />
<br />
<br />
The Dell XPS 13 2016 (9350) is the third-generation model of the XPS 13 line. The laptop is available in both a standard edition with Windows installed as well as a Developer Edition which only differs in that it comes with Ubuntu installed as well as the Broadcom WiFi card replaced with an Intel WiFi card. Just like the older versions ([[Dell XPS 13]] and [[Dell XPS 13 (2015)]]) it can be bought in different hardware configurations.<br />
<br />
The installation process for Arch on the XPS 13 does not differ from any other PC. For installation help, please see the [[Installation guide]] and [[UEFI]]. This page covers the current status of hardware support on Arch, as well as post-installation recommendations.<br />
<br />
As of kernel 4.3, the Intel Skylake architecture is supported.<br />
<br />
== Content adaptive brightness control ==<br />
In the XPS 13 the display panels (both FHD and QHD+) come with adaptive brightness embedded in the panel firmware, this "content adaptive brightness control" (usually referred to as CABC or DBC) will adjust the screen brightness depending on the content displayed on the screen and will generally be found undesirable, especially for Linux users who are likely to be switching between dark and light screen content. Dell has issued a fix for this however it is only available to run in Windows and for the QHD+ model of the laptop so this precaution should be taken before installing Linux, the FHD model of the XPS 13 (9350) cannot be fixed. This is not a problem with the panel but rather a problem with the way the panels are configured for the XPS 13, as the same panel exists in the Dell's Latitude 13 7000 series (e7370) FHD model but with CABC disabled. The fix is available directly from [http://www.dell.com/support/home/us/en/19/Drivers/DriversDetails?driverId=PWD5K&fileId=3505631210&osCode=WT64A&productCode=xps-13-9350-laptop&languageCode=EN&categoryId=AP&dgc=BA&cid=299605&lid=5718620&acd=123092226602942957c94940922&ven3=120619725550599228 Dell].<br />
<br />
== BIOS ==<br />
=== USB not found ===<br />
It may happen that the Arch Linux USB won't be recognized. You have to disable secure boot (Secure Boot > Disable) and then enable the legacy (General > Advanced Boot Options > Enable Legacy Option ROMs).<br />
<br />
=== No UEFI system found ===<br />
Sometimes the BIOS UEFI does not respect the efivars. In this case you have manually add your efi file in BIOS boot options by going to General > Boot Sequence > Add Boot Option.<br />
<br />
=== Updates ===<br />
[http://downloads.dell.com/FOLDER03769593M/1/XPS_9350_1.4.4.exe BIOS update 1.4.4] was released on 2016-06-30. Store the update binary on your EFI partition ({{ic|/boot/EFI}}) or on a USB flash drive, reboot, and choose BIOS Update in the F12 boot menu.<br />
<br />
== Thunderbolt 3 / USB 3.1 ==<br />
<br />
The USB-C port supports Thunderbolt 3, Displayport-over-USB-C and USB power delivery as well as USB 3.1.<br />
<br />
In the event of devices not working correctly, ensure that you have updated to the latest BIOS (above) and Thunderbolt firmware (below).<br />
<br />
[http://downloads.dell.com/FOLDER03798029M/1/Intel_TBT3_FW_UPDATE_NVM16_A04_2.16.01.003.exe Thunderbolt 3 Firmware Update 2.16.01.003, A04] was released on 2016-08-10. Unlike the BIOS update, this is a graphical application which must be run in a modern Windows environment (MS-DOS will not suffice).<br />
<br />
Hotplug support for this port requires a [https://bugzilla.kernel.org/show_bug.cgi?id=115121 bug fix] which landed in kernel version 4.7. It also requires the kernel to be built with <tt>CONFIG_PCI_HOTPLUG=y</tt>.<br />
<br />
== SATA controller ==<br />
When the SATA-controller is set to {{ic|RAID On}} in Bios, the hard disk (at least the SSD) is not recognized. Set to {{ic|Off}} or {{ic|AHCI}} ({{ic|AHCI}} is recommended) before attempting to install Arch.<br />
<br />
=== Dual booting Linux and Windows ===<br />
In order to boot into Windows properly without getting an {{ic|INACCESSIBLE_BOOT_DEVICE}} error with disabled {{ic|RAID}} you must configure Windows to use the {{ic|AHCI}}-speaking SATA storage controller, assuming you used {{ic|AHCI}} for installing Linux. The driver is effectively disabled even though it is installed. Either of the following methods were reported to activate the drivers without reinstallation (your mileage may vary):<br />
<br />
* [http://www.tenforums.com/drivers-hardware/15006-attn-ssd-owners-enabling-ahci-mode-after-windows-10-installation.html booting into safe mode and back]<br />
* [https://samnicholls.net/2016/01/14/how-to-switch-sata-raid-to-ahci-windows-10-xps-13/ Selecting {{ic|Microsoft Storage Spaces Controller}} in Windows Device Manager]<br />
* [http://www.tenforums.com/tutorials/22631-ahci-enable-windows-8-windows-10-after-installation.html Modifying registry entries]<br />
* [http://superuser.com/questions/471102/change-from-ide-to-ahci-after-installing-windows-8/471108#471108 Modifying other registry entries]<br />
<br />
Consult the [https://support.microsoft.com/en-us/kb/2795397 microsoft support] page for additional information. Be aware that some manufactures propagate reinstalling Windows to be the only solution, which it is not.<br />
<br />
== NVM Express SSD ==<br />
=== Cannot find root device ===<br />
The location of the {{ic|nvme}} module for [[wikipedia:NVM_Express|"NVM Express"]] SSD has changed between {{Pkg|linux}} kernel version 4.3 and 4.4. If you experience "cannot find root device" on boot, it may be due to the [https://bugs.archlinux.org/task/47761 {{ic|nvme}} module not being present in {{ic|initramfs}}]. In this case, the following may resolve your issue.<br />
<br />
Edit your {{ic|/etc/mkinitcpio.conf}} file:<br />
...<br />
MODULES="... nvme"<br />
...<br />
<br />
Then update the bootloader.<br />
<br />
# mkinitcpio -p linux<br />
<br />
where {{ic|linux}} is the name of the image loaded on boot. If you installed {{AUR|linux-mainline}} then change that to {{ic|linux-mainline}}.<br />
<br />
=== Note on Mount Options ===<br />
<br />
Using the {{ic|discard}} mount option for your filesystem is not recommended, as mentioned in [[Solid_State_Drives#Continuous TRIM|this warning]] and [https://bbs.archlinux.org/viewtopic.php?pid=1593544#p1593544 the forum]. See also [[Solid State Drives/NVMe#Discards]] for further information.<br />
<br />
=== NVME Power Saving Patch ===<br />
<br />
Andy Lutomirski has released version 4 of his patchset which fixes powersaving for NVME devices in linux. Currently, this patch is not merged into mainline yet. Until it lands in mainline kernel use the AUR package below. <br />
{{App|Linux-nvme|Mainline linux kernel patched with Andy's patch for NVME powersaving APST.|https://github.com/damige/linux-nvme|{{AUR|linux-nvme}}}}<br />
<br />
== Wireless ==<br />
<br />
For the non-developer edition, the built-in Broadcom BCM4350 is now supported in the current {{Pkg|linux}} kernel (as of version 4.4.1-1). The wireless module {{ic|brcmfmac}} also needs the firmware {{ic|brcmfmac4350-pcie.bin}} from the related {{Pkg|linux-firmware}} package.<br />
<br />
The Broadcom adapter does not report its regulatory country and so, by default, the global settings for channels and frequencies will be set. See [[Wireless network configuration#Respecting the regulatory domain]] for more information about how this can be changed.<br />
<br />
== Bluetooth ==<br />
<br />
=== Intel WiFi ===<br />
If your WiFi card supports Bluetooth, then the BT interface should be available out-of-the-box, as the required firmware is included in {{pkg|linux-firmware}}.<br />
<br />
=== Broadcom Wifi ===<br />
Bluetooth should work right away. Load the module {{ic|btusb}} and {{ic|bluetooth}} if it was not already and [[start]]/[[enable]] {{ic|bluetooth.service}}. Refer to [[Bluetooth]] for more information and configuration options.<br />
<br />
==== Wireless headset: strange bluetooth behavior ====<br />
<br />
If your Bluetooth behaves unstable, such as connection loss, stuttering sound. being able to connect but not to listen through it, etc. you probably need the proprietary firmware.<br />
<br />
The Broadcom Bluetooth firmware is not available in the kernel (the same as for the 2015 model [http://tech.sybreon.com/2015/03/15/xps13-9343-ubuntu-linux/ source]), therefore you will have to retrieve it from a Windows [http://downloads.dell.com/FOLDER03272920M/1/9350_Network_Driver_XMJK7_WN32_12.0.1.720_A00.EXE .exe]. You need to extract the {{ic|.exe}} file with {{Pkg|p7zip}} and then convert it to a {{ic|.hcd}} file with ''hex2hcd'' from {{Pkg|bluez-utils}}:<br />
<br />
$ 7z x 9350_Network_Driver_XMJK7_WN32_12.0.1.720_A00.EXE<br />
$ cp Win32/BCM4350C5_003.006.007.0095.1703.hex ./<br />
$ hex2hcd BCM4350C5_003.006.007.0095.1703.hex<br />
# mv BCM4350C5_003.006.007.0095.1703.hcd /lib/firmware/brcm/BCM-0a5c-6412.hcd<br />
<br />
After reboot, the firmware should be available for your Bluetooth interface.<br />
<br />
== Video ==<br />
The video should work with the {{ic|i915}} driver of the current {{Pkg|linux}} kernel. Consult [[Intel graphics]] for a detailed installation and configuration guide as well as for [[Intel graphics#Troubleshooting|Troubleshooting]].<br />
<br />
=== Blank screen issue after booting ===<br />
If using "late start" [[KMS]] (the default) and the screen goes blank when loading modules, it may help to add {{ic|i915}} and {{ic|intel_agp}} to the initramfs or using a special [[kernel parameter]]. Consult [[Intel graphics#Blank screen during boot, when "Loading modules"]] for more information about the kernel paramter way and have a look at [[Kernel mode setting#Early KMS start]] for a guide on how to setup the modules for the initramfs.<br />
<br />
=== Linux kernel 4.3 or earlier ===<br />
<br />
If you are using an older kernel 4.3 or earlier, you also require the kernel parameter {{ic|i915.preliminary_hw_support&#61;1}}, see [[Intel graphics#Skylake support]]. (For later kernels 4.3+ or {{AUR|linux-bcm4350}} the parameter is unnecessary.)<br />
<br />
=== Linux kernel 4.5 or earlier ===<br />
<br />
If you have the newer i7-6560 CPU with Iris 540 graphics, the GPU hangs every few minutes with kernel versions before 4.6. This is probably due to this bug https://bugs.freedesktop.org/show_bug.cgi?id=94161 and can be countered by either disabling DRI in your Xorg configuration:<br />
<br />
{{hc|/etc/X11/xorg.conf.d/20-intel.conf|<br />
Section "Device"<br />
Identifier "Intel Graphics"<br />
Driver "intel"<br />
Option "DRI" "false"<br />
EndSection<br />
}}<br />
<br />
or by adding {{ic|1=i915.enable_rc6=0}} to the kernel boot parameters.<br />
<br />
== Touchpad ==<br />
Only key-presses work out of the box. Installing {{pkg|xf86-input-libinput}} is sufficient for proper mouse support plus it also handles the touchscreen - see [[libinput]] for configuration. Features such as tap-to-click are usually adjustable within the [[desktop environment]].<br />
<br />
Alternatively you may want to install {{pkg|xf86-input-synaptics}} as driver but "it is on maintenance mode and {{pkg|xf86-input-libinput}} must be preferred over" (installation note from the package itself). Plus it may lack the ability to be easily adjustable within your [[desktop environment]] (see [[Dell Studio XPS 13]]). Restarting the X server might be required.<br />
<br />
=== Remove psmouse errors from dmesg ===<br />
<br />
If {{ic|<nowiki>dmesg | grep -i psmouse</nowiki>}} returns an error, but your touchpad still works, then it might be a good idea to disable {{ic|psmouse}}. First create a config file:<br />
<br />
# nano /etc/modprobe.d/modprobe.conf<br />
<br />
blacklist psmouse<br />
<br />
Then add this file to {{ic|/etc/mkinitcpio.conf}}:<br />
<br />
...<br />
FILES="/etc/modprobe.d/modprobe.conf"<br />
...<br />
<br />
Rebuild your initial ramdisk image (see [[Mkinitcpio#Image creation and activation]]).<br />
<br />
=== Gestures ===<br />
<br />
Refer to [[libinput#Gestures]] for information about the current development state and available methods.<br />
<br />
== Sound ==<br />
<br />
=== Hissing/Crackling noises when using headphones ===<br />
<br />
Some people reported white hissing/crackling noises when using headphones. To get rid of them you can run {{ic|alsamixer}} from {{Pkg|alsa-utils}}.<br />
Select your soundcard with F6 and set the headset-gain to 22 (3rd lever from the left) or use the {{ic|amixer}} command:<br />
<br />
$ amixer -c 0 cset 'numid=10' 1<br />
numid=10,iface=MIXER,name='Headphone Mic Boost Volume'<br />
; type=INTEGER,access=rw---R--,values=2,min=0,max=3,step=0<br />
: values=1,1<br />
| dBscale-min=0.00dB,step=10.00dB,mute=0<br />
<br />
Unfortunately [[PulseAudio]] will override the above setting every time you log in/out of your environment (or every time the PulseAudio service is restarted), even if the {{ic|alsa-restore.service}} is enabled at [[start]] up.<br />
<br />
To work around this issue, edit {{ic|/usr/share/pulseaudio/alsa-mixer/paths/analog-input-headphone-mic.conf}} and comment out the section {{ic|[Element Headphone Mic Boost]}}:<br />
<br />
---<br />
#[Element Headphone Mic Boost]<br />
#required-any = any<br />
#switch = select<br />
#volume = merge<br />
#override-map.1 = all<br />
#override-map.2 = all-left,all-right<br />
---<br />
<br />
Similarly in {{ic|/usr/share/pulseaudio/alsa-mixer/paths/analog-input-internal-mic.conf}}, comment out the same section:<br />
<br />
---<br />
#[Element Headphone Mic Boost]<br />
#switch = off<br />
#volume = off<br />
---<br />
<br />
This will prevent PulseAudio to fiddle with the gain setting at all.<br />
<br />
{{Note|Unfortunately, you must make the same modifications every time the PulseAudio package is updated. Additionally, this will entirely disable the internal microphone.}}<br />
<br />
=== Loud popping-noises when sound was not playing ===<br />
<br />
Also people noticed loud popping-noises when sound was not playing.<br />
You can turn off the sound_power_save in through e.g. {{ic|tlp}} <br />
<br />
# nano /etc/default/tlp<br />
...<br />
SOUND_POWER_SAVE_ON_BAT = 0 <br />
...<br />
<br />
== Microphone ==<br />
{{Note| Not all hardware has the "Digital" channel}}<br />
For ALSA, increase "Digital" channel for microphone to work.<br />
<br />
== CPU slowdown after resume from suspend ==<br />
If you are experiencing a very slow computer after resume from suspend, you may be subject to a bug where your CPU frequency is capped to a very low value. Use {{ic|cpupower frequency-info}} to check. If so, please read [https://bbs.archlinux.org/viewtopic.php?pid=1558948#p1558948 this forum thread] for debug information, and a workaround.<br />
<br />
== Diverting models == <br />
<br />
=== XPS 12 ===<br />
{{Expansion|The XPS 12 features a detachable keyboard.}}<br />
<br />
=== Dell XPS 15 ===<br />
Despite the similarities between the two devices they have quite different solutions for various problems, refer to [[Dell XPS 15]] for more information.<br />
<br />
=== Dell XPS 13 (2015) ===<br />
Information about the predecessor is available at [[Dell XPS 13 (2015)]].<br />
<br />
=== Dell XPS 13 9360 (4th Gen - late 2016) ===<br />
Information about the successor is available at [[Dell XPS 13 (4th Gen)]].<br />
<br />
<br />
== lspci and lsusb == <br />
<br />
{{Expansion|Output from ''lspci'' and ''lsusb'' for '''one''' model might be helpful. Different models' hardware (e.g. XPS 12 keyboard, XPS 15 screen) that are susceptible to need different instructions should be pointed out separately (not via a full second hardware output). Alternatively these could be added to [[Laptop/Dell#XPS]]|Talk:Dell XPS 13 (2016)#Thunderbolt and XPS 15.2F13}}<br />
<br />
The <tt>lspci</tt> and <tt>lsusb</tt> below were take from the following system:<br />
<br />
[ 0.000000] DMI: Dell Inc. XPS 13 9350/0PWNCR, BIOS 1.3.3 03/01/2016<br />
<br />
on kernel:<br />
<br />
Linux marv 4.5.4-1-ARCH #1 SMP PREEMPT Wed May 11 22:21:28 CEST 2016 x86_64 GNU/Linux<br />
<br />
<br />
=== lspci ===<br />
<br />
00:00.0 Host bridge: Intel Corporation Skylake Host Bridge/DRAM Registers (rev 08)<br />
00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated Graphics (rev 07)<br />
00:04.0 Signal processing controller: Intel Corporation Skylake Processor Thermal Subsystem (rev 08)<br />
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)<br />
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)<br />
00:15.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 (rev 21)<br />
00:15.1 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #1 (rev 21)<br />
00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)<br />
00:1c.0 PCI bridge: Intel Corporation Device 9d10 (rev f1)<br />
00:1c.4 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1)<br />
00:1c.5 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 (rev f1)<br />
00:1d.0 PCI bridge: Intel Corporation Device 9d18 (rev f1)<br />
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-LP LPC Controller (rev 21)<br />
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)<br />
00:1f.3 Audio device: Intel Corporation Sunrise Point-LP HD Audio (rev 21)<br />
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)<br />
3a:00.0 Network controller: Broadcom Corporation BCM4350 802.11ac Wireless Network Adapter (rev 08)<br />
3b:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader (rev 01)<br />
3c:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller (rev 01)<br />
<br />
[https://gist.github.com/mgalgs/a903e3528f48aa25b5c0b9ae9c09a07f Full output from sudo lspci -v]<br />
<br />
After plugging in a USB-C hub, a number of new PCI devices appear:<br />
<br />
01:00.0 PCI bridge: Intel Corporation Device 1576<br />
02:00.0 PCI bridge: Intel Corporation Device 1576<br />
02:01.0 PCI bridge: Intel Corporation Device 1576<br />
02:02.0 PCI bridge: Intel Corporation Device 1576<br />
39:00.0 USB controller: Intel Corporation Device 15b5<br />
<br />
=== lsusb ===<br />
<br />
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub<br />
Bus 001 Device 004: ID 0c45:670c Microdia <br />
Bus 001 Device 003: ID 04f3:20d0 Elan Microelectronics Corp. <br />
Bus 001 Device 002: ID 0a5c:6412 Broadcom Corp. <br />
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub<br />
<br />
[https://gist.github.com/mgalgs/15fb0d19795f700d60f061f67dddbefc Full output from sudo lsusb -v]<br />
<br />
== See also ==<br />
<br />
* [https://bbs.archlinux.org/viewtopic.php?pid=1579113 Arch Forum thread for XPS 13]<br />
* [http://www.dell.com/support/home/us/en/19/product-support/product/xps-13-9350-laptop/drivers Dell XPS 13 9350 driver and firmware updates]</div>Damigehttps://wiki.archlinux.org/index.php?title=Solid_state_drive/NVMe&diff=452657Solid state drive/NVMe2016-10-01T16:30:52Z<p>Damige: /* NVME Power Saving Patch */ Updated to new release which is version 4</p>
<hr />
<div>[[Category:Storage]]<br />
[[ja:ソリッドステートドライブ/NVMe]]<br />
{{Related articles start}}<br />
{{Related|Solid State Drives}}<br />
{{Related articles end}}<br />
<br />
NVM Express (NVMe) is a specification for accessing SSDs attached through the PCI Express bus. As a logical device interface, NVM Express has been designed from the ground up, capitalizing on the low latency and parallelism of PCI Express SSDs, and mirroring the parallelism of contemporary CPUs, platforms and applications.<br />
<br />
== Installation ==<br />
<br />
The Linux NVMe driver is natively included in the kernel since version 3.3. NVMe devices should show up under {{ic|/dev/nvme*}}.<br />
<br />
Extra userspace NVMe tools can be found in {{aur|nvme-cli-git}}.<br />
<br />
See [[Solid State Drives]] for supported filesystems, maximizing performance, minimizing disk reads/writes, etc.<br />
<br />
{{Note|It may be needed to add the '''nvme''' module to the [[Mkinitcpio#MODULES|MODULES]] array within {{ic|/etc/mkinitcpio.conf}} to successfully boot into the root filesystem.}}<br />
<br />
== Performance ==<br />
<br />
=== Sector size ===<br />
<br />
See [[Advanced Format#How to determine if HDD employ a 4k sector]].<br />
<br />
=== Discards ===<br />
{{note|Contrary to recommendations for SSDs, '''NVMe devices should not be issued discards'''.}}<br />
<br />
Discards are disabled by default on typical setups that use [[ext4]] and [[LVM]], but other filesystems might need discards to be disabled explicitly.<br />
<br />
Intel, as one device manufacturer, recommends not to enable discards at the filesystem level, but suggests the [[Solid State Drives#Periodic TRIM]] method, or apply ''fstrim'' manually.[https://communities.intel.com/thread/75161?start=0&tstart=0]<br />
<br />
=== Airflow ===<br />
<br />
NVMe SSDs are known to be affected by high operating temperatures and will throttle performance over certain thresholds.[http://www.legitreviews.com/samsung-ssd-950-pro-512gb-nvme-pcie-ssd-review_174096/3]<br />
<br />
=== Testing ===<br />
<br />
Raw device performance tests can be run with {{pkg|hdparm}}:<br />
<br />
# hdparm -Tt --direct /dev/nvme0n1<br />
<br />
== Power Saving APST ==<br />
<br />
=== NVME Power Saving Patch ===<br />
<br />
Andy Lutomirski has released version 4 of his patchset which fixes powersaving for NVME devices in linux. Currently, this patch is not merged into mainline yet. Until it lands in mainline kernel use the AUR package below. <br />
{{App|Linux-nvme|Mainline linux kernel patched with Andy's patch for NVME powersaving APST.|https://github.com/damige/linux-nvme|{{AUR|linux-nvme}}}}<br />
<br />
== References ==<br />
* [http://www.intel.com/content/dam/support/us/en/documents/ssdc/data-center-ssds/Intel_Linux_NVMe_Guide_330602-002.pdf Intel Linux NVMe driver reference]</div>Damige