Dell XPS 13 (9370)
硬件 | PCI/USB ID | 工作状态? |
---|---|---|
GPU | 8086:5917 |
是 |
Wi-Fi | 168c:003e |
是 |
蓝牙 | 0489:e0a2 |
是 |
音频 | 8086:9d71 |
是 |
触摸板 | 是 | |
网络摄像头 | 0bda:58f4 |
是 |
红外 | 是 | |
Thunderbolt | 8086:15d3 |
是 |
指纹传感器1 | 否 | |
读卡器 | 10ec:525a |
是 |
Dell XPS 13 Early 2018 (9370) 是 XPS 13 系列的第五代型号。这款笔记本电脑于 2018 年 1 月发布,分为预装 Windows 的标准版和预装 Ubuntu 的开发者版。
- 指纹识别器在开发者版/Linux 版本上不可用,该版本取而代之的是带有内置电源指示灯的常规电源按钮。戴尔的信息在此处可用。
安装
可以通过在启动时按 F2
键访问 UEFI 设置。
- 将 SATA 模式从默认的“RAID”更改为“AHCI”。这将允许 Linux 检测到 NVMe SSD。如果与现有 Windows 安装双启动,Windows 在更改后将无法启动,但这可以在不重新安装的情况下修复。
- 禁用安全启动以允许 Linux 启动。
- 要从通过包装盒中包含的 USB-C 转 USB-A 适配器连接的 USB 设备启动,您需要启用 Thunderbolt 启动。启用后,启动时按
F12
将进入启动菜单。也可以直接使用右侧的 USB-C 端口,而无需进行任何 UEFI 调整。
从 micro SD 卡启动和安装也是可能的,只要在 UEFI 设置中同时启用 SD 卡和 SD 卡启动。
dell-command-configureAUR 可用于修改设置,而无需重启进入 UEFI 菜单。例如,将电池配置为在充电至 75% 时停止充电,并在电量耗尽至 60% 时才重新开始充电
# cctk --PrimaryBattChargeCfg=Custom:60-75
固件
戴尔通过 Linux 供应商固件服务 (LVFS) 提供固件更新。有关更多信息,请参阅从 Linux 刷新 BIOS#fwupd。软件包在fwupd中 readily available。更新也为 Thunderbolt 控制器提供。存在一个问题,重新刷新后 Thunderbolt 版本号被检测为 00.00
(目前正在调查中)。
或者,对于 BIOS 更新,您可以简单地从戴尔支持页面将 .exe 文件复制到任何 FAT32 驱动器(甚至启动分区似乎也可以工作)。然后在启动时按 F12
进入“BIOS Flash Update”实用程序。
戴尔还发布了 SSD 固件的更新,但这些只能从 Windows 更新,不能从 Linux 更新。
显示
enable_psr=1
内核参数似乎无法正常工作,至少在触摸屏型号上是这样。
如果无法调整背光亮度,请添加 i915.enable_dpcd_backlight=0
作为内核参数。
内容自适应亮度控制
在 XPS 13 中,显示面板(FHD 和 4K UHD)默认都启用了内容自适应亮度控制(通常称为 CABC 或 DBC,有时也称为“EcoPower”)。虽然在以前的型号中禁用需要刷新显示固件,但现在可以在最近的 BIOS 版本的“视频”部分中禁用 DBC。要测试是否启用了 DBS,请访问此测试页面。
存储
固件
NVMe SSD 是 Toshiba KXG50ZNV256G、KXG50ZNV512G 或 KXG50ZNV1T02。库存固件版本 AADA4102 在 SSD 进入最低功耗状态时存在严重问题。这会导致设备无响应(内核抱怨只读文件系统)。问题可能随时发生,但在 Kernel 4.18 在电池供电时似乎变得更加常见。固件版本 AADA4107 似乎修复了该问题。固件仅适用于 Windows,但可以在 Linux 下更新,风险自负。
由于升级只能在 Windows 下进行,并且即使升级了驱动程序,磁盘也可能因 SSD 在最深睡眠模式下无响应而完全无法被内核检测到,因此以下内核参数可用作一种解决方法,防止磁盘进入有问题的睡眠模式(参见固态硬盘/NVMe)
nvme_core.default_ps_max_latency_us=6000
性能
如果系统在创建任何类型的大文件或数据交换时变得无响应,则您可能需要通过添加内核参数 libata.force=noncq
来禁用本机命令队列。
外围设备
键盘
键盘背光具有一项功能,使其在给定的超时后自动关闭。可以通过写入 /sys/class/leds/dell\:\:kbd_backlight/stop_timeout
来调整此超时。例如,
# echo "5m" > /sys/class/leds/dell\:\:kbd_backlight/stop_timeout
这将超时设置为 5 分钟。请注意,当机器连接到交流电源和从电池运行时,会维护不同的超时。
触摸板
触摸板是基本的 Synaptics PS/2 设备。
光标跳动
触摸板有时可能会产生“光标跳动”。有时,libinput 会检测到并解决此问题,从而产生类似的日志条目
libinput error: event12 - DELL07E6:00 06CB:76AF Touchpad: kernel bug: Touch jump detected and discarded.
有一个关于此问题的libinput 错误,结论是这可能是硬件问题或内核驱动程序中的错误。
灵敏度
默认情况下,libinput 驱动程序可能不具有所需的灵敏度。可以通过xinput 更改加速度,如下所示
$ xinput --set-prop $(xinput | grep 'DELL.*Touchpad' | awk '{print $6}' | sed 's/id=//g') 'libinput Accel Speed' 0.5
网络摄像头
如果网络摄像头在进入深度睡眠后无法工作,您需要更新您的 bios 至版本1.5.1 或更高版本。一些用户报告了网络摄像头卡在 640x480 的问题。
红外摄像头
红外摄像头可以用作howdy的身份验证方法。
指纹识别器
不支持指纹识别器。有一个libfprint 功能请求。
音频
内置音频的报告褒贬不一。据传闻,内置音频可以正常工作,没有问题(上次在 6.8.1-arch1-1
上测试),但其他用户报告了以下问题。
内置音频大约在 2020 年之前工作正常,但自内核 5.4 以来不再工作,原因是内核错误、固件/UEFI 问题或两者兼而有之。
已观察到内置声卡以低概率随机工作,大约在数十次启动中工作一次。指示性消息(供搜索引擎查找)
journalctl -k -b
snd_hda_intel 0000:00:1f.3: spurious response 0x0:0x0, last cmd=0xfff0005 hdaudio hdaudioC0D0: no AFG or MFG node found hdaudio hdaudioC0D2: no AFG or MFG node found hdaudio hdaudioC2D0: no AFG or MFG node found hdaudio hdaudioC2D2: no AFG or MFG node found snd_hda_intel 0000:00:1f.3: azx_get_response timeout, switching to polling mode: last cmd=0x200f0000 snd_hda_intel 0000:00:1f.3: No response from codec, disabling MSI: last cmd=0x200f0000 snd_hda_intel 0000:00:1f.3: azx_get_response timeout, switching to single_cmd mode: last cmd=0x200f0000 snd_hda_intel 0000:00:1f.3: no codecs initialized
截至 2022 年 9 月,似乎没有已知的解决此问题的方法(蓝牙耳机或坞站中的 USB 声卡除外)。
连接
蓝牙
蓝牙适配器有时会在从挂起状态唤醒后变得不可用,甚至在热重启后仍保持停用和不可见状态。2018 年 10 月底,戴尔宣布了一个内核补丁。但是,对于至少某些用户来说,该问题似乎仍然未解决。
一个快速的解决方法是在挂起之前 rmmod btusb
,并在恢复后 modprobe btusb
。为此,您可以将任何名称的可执行脚本放在 /lib/systemd/system-sleep/
中。
#!/bin/sh if [ "$1" 1 "pre" ]; then systemctl stop bluetooth && rmmod btusb elif [ "$1" 1 "post" ]; then modprobe btusb && systemctl start bluetooth fi
确保它是可执行的。感谢 Cyrus Lien 提供的此解决方法。
Wi-Fi
Wi-Fi 适配器包含 Qualcomm Atheros QCA6174 模块。它应该与最近linux内核中的 ath10k_pci
驱动程序一起开箱即用。
对于任何 Wi-Fi 问题,戴尔提供了指南来安装最新的 Killer 无线驱动程序。
USB Type-C 端口
9370 只有三个 Type-C 端口(没有其他端口,只有一个音频插孔)。其中两个(在左侧)支持 Thunderbolt 3。没有电源插孔。包装盒中包含一个 45 W USB Type-C 充电器。三个 Type-C 端口中的任何一个都可用于充电。由于笔记本电脑没有 USB-A 端口,因此包含一个戴尔品牌的 Type-C 转 A 适配器。
此外,所有三个 Type-C 端口都支持 DisplayPort 备用模式。它由固件处理,因此即使使用不支持它的旧内核也可以工作。对于操作系统来说,这看起来好像笔记本电脑有两个 DisplayPort 连接器(除了内部屏幕使用的嵌入式 DP)。到目前为止,已测试了以下适配器。所有这些都会在操作系统中显示,就像您将某些东西插入其中一个 DP 连接器一样。
- Club3D Type-C 转 DisplayPort 1.2 适配器(已测试 1080p 和 4K,均以 60 Hz 工作)
- 戴尔 Type-C 转 VGA 适配器(已测试 1080p,60 Hz)
- 戴尔 Type-C 转 HDMI 适配器(已测试 1080p 和 4K,均以 60 Hz 工作)
- Moshi USB-C 转 HDMI 适配器(已测试 1080p 和 4K,均以 60 Hz 工作)
- Thinkvision P24h USB、供电、视频工作。
电源
省电
要节省更多电池电量,请使用 TLP 软件包和/或 Powertop。
您可以使用 s-tui 工具监控已用功率以及机器的温度。
要最大限度地降低 GPU 的功耗,请确保 i915
正确加载固件,如Intel graphics#Enable GuC / HuC firmware loading中所述。
默认情况下,为了节省电量,英特尔睿频模式在电池供电时似乎是被禁用的。如果不需要这样,可以配置 TLP 以在电池供电时重新启用睿频,但这并不总是成功。一个解决方案是使用 acpid 来检测 AC 充电器断开连接,并在短暂延迟后通过添加以下内容来重新触发 TLP
/etc/acpi/handler.sh
... ac_adapter) case "$2" in ACPI0003*|AC|ACAD|ADP0) case "$4" in 00000000) logger 'AC unplugged' sleep 2 tlp true ;; 00000001) logger 'AC plugged' sleep 2 tlp false ;; esac ;; *) logger "ACPI action undefined: $2" ;; esac ...
睡眠
请参阅 电源管理/挂起和休眠#更改挂起方法。
根据制造商的说法(参见 这个上游内核错误),该机器有意使用 S2 而不是 S3,他们正在努力解决 S2 上的功耗问题。
Fn+End
,或者如果您启用了“Fn 锁定”,则仅需 End
)仍然可以唤醒机器。这已通过 BIOS 更新修复。散热节流
默认情况下,散热节流在大约 80°C 时激活,导致最大持续 CPU 频率约为 2.4Ghz,远低于戴尔的标准 Windows 安装。
Package temperature above threshold, cpu clock throttled (total events = 971)
这可以使用 throttled 或 intel-undervolt 来解决,这两者都可用于设置更高的跳变温度。两者也可用于降压以进一步减少节流,但是固件版本高于 1.12.1 的系统似乎禁用了此功能。
散热模式 / 风扇配置文件
就像在 Windows 中使用 Dell Power Manager 一样,您可以设置机器的风扇和 CPU 的散热配置和行为。这可以通过以下命令完成(确保 libsmbios 已安装),或者通过 KDE Plasma 小部件 plasma5-applets-plasma-pstateAUR
要查找设置了什么散热模式,请输入
# smbios-thermal-ctl -g
要查找所有可用的散热模式,请输入
# smbios-thermal-ctl -i
最后,要设置您之前通过命令确定的所需散热模式,请输入
# smbios-thermal-ctl --set-thermal-mode=THERMAL_MODE
- “安静”和“凉爽底面”配置文件将 CPU 功率限制为 11W(18W 睿频),从而降低整体系统性能。
- “平衡”和“性能”配置文件取消了此限制。
- 散热配置文件更改可能无法可靠地改变 CPU 功率限制。通过 Thunderbolt 扩展坞连接时,情况似乎更糟。
- 在某些情况下,启动后(尤其是在“安静”配置文件下),功率可能被限制为 10W。
- 断开并重新连接电源、更改散热配置文件或只是等待可能会解决这些问题。
为了更精细地控制风扇,可以使用 i8kutils 来指定应激活任一风扇的温度。这可能与 BIOS 风扇控制冲突,可以使用 dell-bios-fan-control-gitAUR 禁用 BIOS 风扇控制。
功能键
许多 Fn
组合由于某种原因产生 XF86Launch3
。
按键 | 可见?1 | 标记?2 | 效果 |
---|---|---|---|
Fn+Esc |
否 | 是 | 启用 Fn 锁定 |
Fn+F1 |
是 | 是 | XF86AudioMute
|
Fn+F2 |
是 | 是 | XF86AudioLowerVolume
|
Fn+F3 |
是 | 是 | XF86AudioRaiseVolume
|
Fn+F4 |
是 | 是 | XF86AudioPrev
|
Fn+F5 |
是 | 是 | XF86AudioPlay
|
Fn+F6 |
是 | 是 | XF86AudioNext
|
Fn+F7 |
是 | 是 | Meta_L + Tab
|
Fn+F8 |
是 | 是 | Meta_L + P
|
Fn+F9 |
是 | 是 | XF86Search
|
Fn+F10 |
否 | 是 | 切换键盘背光 |
Fn+F11 |
是 | 是 | Print
|
Fn+F12 |
是 | 是 | Insert
|
Fn+Home |
是 | 是 | XF86RFKill 3 |
Fn+Super_L |
是 | 否 | Super_R
|
Fn+Ctrl_R |
是 | 是 | Menu
|
Fn+Up |
是 | 是 | XF86MonBrightnessUp
|
Fn+Down |
是 | 是 | XF86MonBrightnessDown
|
Fn+Q |
是 | 否 | XF86Launch3
|
Fn+W |
是 | 否 | XF86Launch3
|
Fn+E |
是 | 否 | XF86Launch3
|
Fn+R |
是 | 否 | Print
|
Fn+A |
是 | 否 | XF86Launch3
|
Fn+S |
是 | 否 | Scroll_Lock
|
Fn+D |
是 | 否 | XF86Launch3
|
Fn+F |
是 | 否 | XF86Launch3
|
Fn+G |
是 | 否 | XF86Launch3
|
Fn+B |
是 | 否 | Pause
|
- 该按键通过
wev
和类似工具可见 - 物理按键上有一个符号,描述了其功能
- systemd-logind 默认处理此项