Dell XPS 13 (9343)

来自 ArchWiki
注意: 本页面指的是 2015 年 早期 型号的 XPS 13。对于 2015 年 后期 型号,请参阅 Dell XPS 13 (9350)
硬件 PCI/USB ID 工作?
音频 8086:160c
GPU 8086:1616
Wi-Fi 14e4:43b1
蓝牙 0a5c:216f
触摸板 06cb:76ad
网络摄像头 0bda:5682
SD 卡读卡器 10ec:5249

2015 年 Dell XPS 13 (9343) 是戴尔 XPS 13 系列的第二代型号。与其前代产品一样,它也获得了戴尔 Project Sputnik 团队的官方 Linux 支持[1]。他们的目标是 Ubuntu 14.04 LTS,但 Sputnik 团队的改进和支持通常适用于所有发行版。

在 XPS 13 上安装 Arch Linux 的过程与任何其他 PC 没有区别。有关安装帮助,请参阅安装指南UEFI 页面。本页面涵盖了 Arch 上硬件支持的当前状态,以及安装后的建议。

截至内核 4.1.3(2015 年 7 月发布),不再需要打补丁的内核。但是,仍然建议进行一些手动配置以获得最佳体验。

型号差异

虽然 XPS 13 在大多数市场都以多种配置销售,但想要运行 Linux 的用户应特别注意显示屏选项(FHD 或 QHD+)和 Wi-Fi 适配器差异(Dell DW1560 或 Intel 7265)。

使用 QHD+ 显示屏的用户应使用正确支持 HiDPI 的 DE/WM。

关于 Wi-Fi 适配器,两种卡都可以在 Arch Linux 中工作。如果 Intel 卡由于主线内核支持而可以开箱即用,那么 Dell DW1560 则需要一个专有的内核模块,该模块不受良好支持;更多详细信息在下面的相应章节中报告。

开发者版和标准 Windows 版之间没有独有的硬件差异,因此本指南同样适用于这两种型号。

固件

注意: LVFS 不支持此设备,因此您无法使用 fwupd 来升级 UEFI。要执行此操作,请按照下述手动进行。

最新的 UEFI 更新是 A20,它于 2019 年 10 月 8 日发布。使用 A02 或更新版本,几乎所有功能都应开箱即用,并且不再需要与早期 UEFI 版本结合使用的内核引导参数。

升级很容易,这要归功于 UEFI 实现:将更新二进制文件(刚下载的 .exe 文件)放置在EFI 系统分区或 USB 闪存驱动器上,重新启动,按 F12 键进入启动菜单,然后选择BIOS 更新

配置

屏幕和键盘背光

背光及其控制开箱即用

  • systemd-backlight.service 负责 eDP 面板键盘背光(以及任何其他外部设备)状态,在关机时保存并在启动时恢复其值。
  • 硬件功能键(Fn-F11Fn-F12 用于屏幕背光,Fn-F10 用于键盘背光)也可以在没有任何操作的情况下工作。
注意: 默认情况下,键盘背光在闲置 60 秒后自动关闭。您可以通过编辑相关的 sysfs 条目 /sys/devices/platform/dell-laptop/leds/dell\:\:kbd_backlight/stop_timeout 来更改默认行为。

动态背光/亮度控制 (DBC)

您可能会注意到屏幕看起来比您预期的要暗,或者屏幕整体亮度不断变化。这种行为不是任何显示器问题的症状,而是一种称为动态背光/亮度控制 (DBC)的技术,旨在根据屏幕上显示的内容来节省能源。

提示: 您可以在此网站上检查此功能。
注意: 此功能是自动不可控制的。根据戴尔官方来源,只有 QHD+ 型号 有机会通过固件更新禁用它。

SSD

此笔记本电脑系列配备 SSD 作为存储设备,通过 SATA 连接。此技术需要进行一些配置才能实现最佳运行条件。有关更多信息,请参阅固态硬盘

Wi-Fi

大多数配置都配备 Dell DW1560 802.11ac 适配器。它基于 Broadcom BCM4352 芯片,需要专有驱动程序才能工作。软件包 broadcom-wlbroadcom-wl-dkms 提供了它。在前一种情况下,请记住也要安装 Linux 内核头文件(即使它被列为 dkms 软件包的可选依赖项,但对于拥有可工作的网络来说,它是强制性的)。有关更多详细信息和/或帮助,请参阅 Broadcom 无线页面。

一些高端型号不使用上述适配器,而是使用 Intel Wireless 7265 网卡,该网卡受主线内核支持。

注意: Intel 网卡作为售后购买广泛可用,供希望更换笔记本电脑中 Broadcom 适配器的用户使用。与 Broadcom 网卡相比,此选项除了对 Wi-Fi 和蓝牙的令人羡慕的驱动程序支持,使安装更容易之外,它还具有 2-3 倍的更宽接收范围和更高的吞吐量,使其成为值得升级的产品。其他网卡也可用,尤其是 Intel Wireless 8265 已知可以工作[2]

蓝牙

注意: 对于同时使用 Wi-Fi 和蓝牙的 Intel 无线适配器的用户,蓝牙接口应开箱即用,因为所需的固件包含在 linux-firmware 中。

Broadcom 蓝牙固件在内核中不可用(来源),因此如果您想使用蓝牙,则需要安装 bcm20702a1-firmwareAUR 并重新启动。

或者,您可以自己直接从 Windows 驱动程序中检索固件。您需要使用 cabextract 提取 .cab 文件,然后使用 bluez-utils 中的 hex2hcd 将其转换为 .hcd 文件

$ cabextract 20662520_6c535fbfa9dca0d07ab069e8918896086e2af0a7.cab
$ hex2hcd BCM20702A1_001.002.014.1443.1572.hex
# mv BCM20702A1_001.002.014.1443.1572.hcd /lib/firmware/brcm/BCM20702A1-0a5c-216f.hcd
# ln -rs /lib/firmware/brcm/BCM20702A1-0a5c-216f.hcd /lib/firmware/brcm/BCM20702A0-0a5c-216f.hcd

重新启动后,固件可用于您的蓝牙接口。

音频

注意: 正确的音频支持取决于拥有最新的固件。如果您尚未更新到固件 A02 或更高版本,请先执行 BIOS 更新

此笔记本电脑中的声卡芯片组 Realtek ALC3263 被描述为“双模式”,这意味着它同时支持 HDA 标准I2S 标准。XPS 13 中的嵌入式控制器使用操作系统本身提供的 ACPI _REV 值来确定在启动时应以哪种模式初始化声卡芯片组。

HDA 模式

使用 BIOS A02+,声卡将默认以 HDA 模式初始化。

注意: 要在排除的内核上使用 HDA 模式,请使用选项 CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y 重新编译它们。这将强制启用 HDA 模式。
设置默认声卡

默认情况下,ALSA 不会将声音输出到 PCH 声卡,而是输出到 HDMI 声卡。可以通过遵循 ALSA#设置默认声卡 来更改此设置。要设置正确的顺序,请在 /etc/modprobe.d/ 中创建以下 .conf 文件 [3]

/etc/modprobe.d/alsa-base.conf
options snd_hda_intel index=1,0
注意: 如果您与 Windows 双启动,则必须冷启动两次才能在 Linux 中获得声音,反之亦然。这在 I2S 模式下不是必需的。

I2S 模式

本文或章节需要扩充。

原因: 解释如何在不降级到旧内核的情况下切换到 I²S 模式。(在 Talk:Dell XPS 13 (9343) 中讨论)

I2S 支持需要 alsa-lib 1.1.0[4] 或更新版本。(I2S 支持在主线内核 4.5 中被破坏,并在 Arch 内核 4.5.2 和主线 4.8 中修复FS#48936[5])。

启用麦克风
注意: 从官方 Arch Linux 内核 4.5.3 开始,麦克风似乎默认已启用,因此这些说明可能是没有必要的 FS#47989#comment146876

在 I2S 模式下,内置麦克风默认处于静音状态。要启用它,您必须取消静音 Mic 项目。请按照以下说明进行操作以实现目标

  • 打开 alsamixeralsa-utils 软件包中包含的实用程序)
  • F6 并选择 broadwell-rt286 声卡
  • F4 切换到捕获视图,并确保 ADC0 具有CAPTURE 标签。如果没有,请使用箭头键切换到它并按空格键将其打开为 CAPTURE
  • 最后,切换到 Mic 项目并将音量调高至 100。
注意:pavucontrol 应用程序中循环 输入设备 选项卡的 端口(从主麦克风耳机麦克风(已拔下),然后再返回)与上述说明具有相同的效果。
使用 Jack

默认情况下,Jack 识别四个捕获端口,并且由于传输被分成短片段且片段之间存在中断而无法使用。使用命令行上的 -i2qjackctl 的高级设置中的相应选项将输入限制为两个通道。

功能键

以下是关于您可以与此型号一起使用的功能键的摘要表

按键 可见?1 标记?2 效果
Fn+Esc 启用 Fn 锁定
Fn+F1 XF86AudioMute
Fn+F2 XF86AudioLowerVolume
Fn+F3 XF86AudioRaiseVolume
Fn+F4 XF86AudioPrev
Fn+F5 XF86AudioPlay
Fn+F6 XF86AudioNext
Fn+F8 切换内部/外部显示器
Fn+F9 XF86Search
Fn+F10 切换键盘背光强度
Fn+F11 XF86MonBrightnessDown
Fn+F12 XF86MonBrightnessUp
Fn+Stamp XF86RFKill
Fn+Insert XF86Sleep
Fn+Super (左) Super (右)
Fn+Ctrl (右) 菜单
Fn+左 首页
Fn+上 Page Up
Fn+下 Page Down
Fn+Ctrl (右) End
Fn+B Pause
Fn+R Print
Fn+S Scroll Lock
Fn+A / D / E / F / G / T / Q / W XF86Launch3
  1. 该按键对 xev 和类似工具可见。
  2. 物理按键上有一个符号,描述了其功能。

触摸板

使用最新的 BIOS,触摸板应该可以与 synaptics 或 libinput 驱动程序开箱即用。后者比前者更受推荐。

Synaptics 驱动

有关 Synaptics 驱动程序的更高级设置,请参阅 Touchpad Synaptics

如果触摸板在您使用多于一根手指时冻结,请尝试使用 synclient Clickpad=1 启用 Clickpad 模式。

Libinput 驱动

为了获得更好的多点触控支持,您可以使用 xf86-input-libinput。libinput 驱动程序几乎开箱即用地支持所有按钮布局,只需少量额外设置。

有关更多详细信息,请参阅特定的 libinput 页面。

有关更多可配置选项(例如 NaturalScrolling、MiddleEmulation),请参阅 libinput(1)

节能

使用内核 4.6.5 和 tlp,启用 内核参数 pcie_aspm=force 后,空闲功耗可以达到约 2.3 瓦。

您可以使用 powertoppowerstat-gitAUR 来重现和检查此行为。

注意:  
  • 使用内核 4.6+,帧缓冲区压缩 (FBC) 默认启用,因此不再需要 i915.enable_fbc
  • 面板自刷新 (PSR) 会导致显示屏闪烁,因此从内核 4.9 开始默认已禁用 [6]
  • 不再需要用于 LVDS 降频i915.lvds_downclock=1。根据 IRC #intel-gfx,“[...] 最近的内核中 eDP 面板有一个新的自动降频功能,如果可用,则默认启用 [...]”。
  • i915.enable_rc6=7 在 Broadwell (Gen8) 系统上是无用的,因为此选项启用的更深 GPU 电源状态(RC6p 和 RC6pp)在 Gen7+ 硬件上不存在 [7][8]

校准的 ICC 配置文件

QHD+ 型号

警告: 此配置文件仅适用于 QHD+ 型号。如果您有 FHD 型号,请勿使用它。

ICC 配置文件是一个二进制文件,其中包含有关显示器颜色属性的精确数据。它允许您为图形和文档生成一致且可重复的结果。以下 ICC 配置文件是使用 dispcalGUI (displaycal) ArgyllCMS (argyllcms) 和用于绝对色彩准确度的分光光度计制作的;即使通过自行校准显示器可以获得更好的结果,但总的来说,此配置文件绝对是对库存配置文件的改进。

此配置文件是在分光光度计的高分辨率光谱模式下制作的,具有白色和黑色电平漂移补偿、高质量 ArgyllCMS 开关和 3440 个色块。动态亮度控制已被禁用,并且显示器已打开至少 30 分钟才开始校准。

禁用触摸屏

这是一个可选步骤,并在 2019 年 7 月使用 Gnome 和 Wayland 进行了测试。找出它是哪个设备

$ libinput list-devices

滚动以找到正确的部分(类似于 ELAN 触摸屏),并找到行 Kernel: /dev/input/event#。将 event# 用于下一个命令

$ udevadm info -a -p /sys/class/input/event#

找到一个最有可能独特/不同的属性。例如 ATTRS{name}=="ELAN Touchscreen"创建

/etc/udev/rules.d/99-disable_touchscreen.rules
KERNEL=="event*", ATTRS{name}=="ELAN Touchscreen", ENV{LIBINPUT_IGNORE_DEVICE}="1"

然后检查它是否有效

$ udevadm test /sys/class/input/event#

并搜索

LIBINPUT_IGNORE_DEVICE=1

如果此行在那里(最有可能在最后 3 行内),请重新启动,您的触摸屏应已禁用。

电池阈值

BIOS 允许设置充电和放电的阈值。这有助于保持电池健康并减少电池损耗。

即使内核驱动程序没有公开任何控制电池的接口[9],仍然可以通过 libsmbios 库或 dell-command-configureAUR [10] 专有工具进行用户空间交互。

注意: GNOME 用户可以使用 Battery Health Charging 扩展程序 [11] 作为简单而强大的图形方式来管理它。

故障排除

启动时内核随机挂起

请参阅此处。此问题似乎仅影响触摸屏型号的所有者。修复方法是从 /etc/mkinitcpio.conf 中的 HOOKS 数组中删除 keyboard。如果您在启动时需要键盘,请按如下方式编辑 MODULES 数组:MODULES="atkbd usbhid hid-generic"。之后,您将必须重新生成 initramfs

有时在关闭并重新打开屏幕盖后,系统无法从睡眠状态恢复

即使根据 此 kernel.org 错误报告,它已被报告为上游已修复,但用户仍然受到此问题的困扰(报告了带有内核 4.20.12 的 FullHD 型号和带有内核 4.18.6 的 QHD+ 型号)。

此外,根据上述错误报告中的评论,您可以通过将 mei 模块列入黑名单来解决此问题

/etc/modprobe.d/blacklist.suspend-bug.conf
blacklist mei
blacklist mei_me

S3 恢复后出现图形伪影/不稳定

如果您在从睡眠状态恢复后遇到一些伪影和/或无法使用的图形环境,您可能需要将您的 Intel 显卡加速从 SNA 切换到 UXA 。然而,切换到 UXA 会导致性能下降。切换到 xf86-video-modesetting (Glamor 加速) 不应大幅降低性能,但目前尚不清楚它是否会修复恢复问题。

Broadcom 无线连接问题

如果在驱动程序安装和重新启动后 wifi-menuiwlist scan 失败,请尝试在 BIOS 中禁用“无线开关”控件。

DE 无法连接蓝牙设备

如果蓝牙 GUI 无法连接设备,请尝试使用 bluetoothctl 手动连接。

启动或音频播放期间出现爆裂声/噪音

一些用户报告了上述声音问题,例如 此处 所述。

禁用音频省电 可能适用于使用 HDA 音频模式的人。

但是,对于 I2S 音频模式,如何解决此问题仍然未知。

有关更多参考,请参阅相应的 内核错误条目

视频或网络摄像头输出中出现粉色和绿色伪影

xf86-video-intel 更新到最新版本。这应该可以解决问题。

使用 mini DisplayPort/HDMI 适配器实现 4K/60Hz

即使在使用支持 4K/60Hz 输出的有源 miniDP/HDMI 适配器时,显示器也可能无法识别为支持 60Hz。只有 4K/30Hz 模式可能会被检测到并由 xrandr 显示。在这种情况下,您仍然可以使用 cvt 中的reduced blinking modeline 手动添加 60Hz 模式

cvt -r 3840 2160 60
# 3840x2160 59.97 Hz (CVT 8.29M9-R) hsync: 133.25 kHz; pclk: 533.00 MHz
Modeline "3840x2160R"  533.00  3840 3888 3920 4000  2160 2163 2168 2222 +hsync -vsync

如果没有计算 reduced blinking modeline 的 -r 标志,它可能无法工作。然后按照 xrandr#添加未检测到的分辨率 中的描述进行操作。

参见

通用

Project Sputnik