MSI GS65
硬件 | PCI/USB ID | 工作状态? |
---|---|---|
触摸板 | 部分工作 | |
键盘 | 1038:1122 |
是 |
GPU (Intel) | 8086:3e9b |
是 |
GPU (Nvidia) | 10de:1ba1 |
是 |
网络摄像头 | 5986:211c |
是 |
以太网 | 1969:e0b1 |
是 |
蓝牙 | 8087:0aaa |
是 |
雷电接口 | 是 | |
音频 | 8086:a348 |
是 |
Wi-Fi | 8086:a370 |
是 |
有关笔记本电脑相关文章和建议的概述,请参阅Laptop。
安装
安全启动可以在“安全”选项卡中禁用,启动模式可以选择从UEFI切换到传统模式。可以通过进入“高级”选项卡并按住 l-alt,然后按 r-ctrl、r-shift,最后按 F2 来访问高级 BIOS 选项。
固件
BIOS 版本 E16Q2IMS.110 引入了许多 ACPI 问题(如果 BIOS 从 UEFI 更改为传统模式),包括启动时大量 "No handler or method for GPE [00->6E]" 错误,可以通过内核参数解决
acpi=off
允许启动,但包括键盘和触摸板在内的大部分功能将无法工作。pci=nomsi
或acpi=off acpi=force
允许启动并使键盘和触摸板工作,但 NVidia 显卡将无法工作;USB3 端口也无法工作。pcie_aspm=off
将允许大多数功能工作:键盘、触摸板、USB 3 设备、NVidia 显卡。
视频
NVIDIA GPU 多显示器支持
HDMI 和 DP 端口连接到 Nvidia GPU,因此需要一些额外的操作才能使多显示器与连接到这些端口的显示器一起工作。雷电端口连接到 Intel GPU,因此允许外部显示器与关闭的 Nvidia GPU 一起使用。参见 Bumblebee#Output wired to the NVIDIA chip,尽管那里的配置可能无法直接工作。
在 MSI GS65 上使 HDMI 和 DP 端口上的外部显示器工作的说明
1. 安装 bumblebee
和 xf86-video-intel
。
2. 配置 Xorg 以使用 intel
(而不是 modesetting
) 视频驱动程序用于 Intel GPU。
/etc/X11/xorg.conf.d/20-intel.conf
Section "Device" Identifier "intel" Driver "intel" EndSection
3. 使 intel-virtual-output 启动的 Xorg 使用 Nvidia GPU
/etc/bumblebee/xorg.conf.nvidia
Section "Device" Identifier "nvidia" Driver "nvidia" EndSection
4. 重启 X 服务器
5. 启动 intel-virtual-output -b
6. 使用 xrandr
或其他工具打开显示器并调整其位置。
$ xrandr --output VIRTUAL1 --right-of eDP1 --preferred
外部显示器应在 xrandr -q
中的 VIRTUAL1 输出下。如果不是,请检查 intel-virtual-output -b
是否成功在 DISPLAY=:8 上运行了 X 服务器,并且 xrandr -d :8 -q
显示了已连接的显示器。
局限性
看起来唯一的局限性是无法使用 VDPAU 硬件视频解码,尽管老实说,它可以直接在 DISPLAY=:8 上用作一种丑陋的 hack(确保你的 WM 首先忽略外部屏幕)。但 NVENC/NVDEC 不依赖于 X,可以与 ffmpeg 和 gstreamer 等工具一起使用,Intel Quick Sync VAAPI 也有效,因此缺少 VDPAU 是一个小问题。
混合显卡
与大多数具有混合显卡的现代笔记本电脑一样,GS65 使用 Optimus MUXless 方案,并支持专用 NVIDIA GPU 完全断电(Runtime D3cold)所需的 ACPI 方法,从而在不使用时节省大量电量。
如果使用最新的专有 NVIDIA 驱动程序 nvidia 或 nvidia-dkms,这应该几乎可以开箱即用,而无需像 Bumblebee 这样的工具,只需设置 nvidia
模块的 NVreg_DynamicPowerManagement
选项即可
/etc/modprobe.d/nvidia.conf
options nvidia NVreg_DynamicPowerManagement=2
如果笔记本电脑的电源 LED 从橙色变为白色,则表示 NVIDIA GPU 当前已断电。使用此方法和 nvtop 等工具来排查任何配置问题或程序在没有有效理由的情况下探测 GPU 的异常行为。
如果您在使用 GPU 的电源管理时遇到问题,请访问 PRIME#NVIDIA 和 此页面 以获取更多详细信息。如果仍然无法解决问题,请检查高级 BIOS 设置中是否启用了显式 ACPI D3cold 功能。
请注意,某些与 ACPI 相关的内核参数(如 acpi_osi
)或自定义 DSDT 表可能会使此功能无法运行。请谨慎操作。
电源管理
睡眠时的一个问题是,唤醒时网络将被禁用并设置为飞行模式。此问题不影响休眠。
键盘背光
键盘上的 Steel Series 灯光无法使用 msi-keyboard-gitAUR 进行配置,因为此工具仅适用于基于区域的 RGB 照明。对于此笔记本电脑型号,工具 msi-perkeyrgbAUR 提供了部分控制。
如果键盘灯仍然熄灭,请确保在安装 msi-perkeyrgb 后重新启动以刷新 udev,并将亮度用 Fn+PgUp 调到最大,然后再次尝试该命令。
为了用按键切换颜色,创建一个脚本文件
msi-rgb-switch.sh
profs=(aqua chakra default disco drain freeway plain rainbow-split roulette disable) fn="./.msi-rgb" touch $fn prof=$(cat $fn) if [ -z $prof ]; then echo "0" > $fn vl=0 else nv=$(($((prof+1)) > 9 ? 0 : $((prof+1)))) echo $nv > $fn vl=$nv fi if [ ${profs[$vl]} = "disable" ]; then msi-perkeyrgb -m GS65 -d else msi-perkeyrgb -m GS65 -p ${profs[$vl]} fi
并将脚本映射到一个快捷键。这将自动轮换到下一个 rgb 颜色
功能键
按键 | 可见?1 | 标记?2 | 效果 |
---|---|---|---|
Fn+F2 |
是 | 是 | 输入 Super+P 。 |
Fn+F3 |
是 | 是 | F21 /XF86XK_TouchpadToggle |
Fn+F6 |
是 | 是 | Camera 。这也使网络摄像头上线并将其暴露给内核。 |
Fn+F7 |
否4 | 是 | 未映射。 |
Fn+F8 |
是 | 否 | WLAN /飞行模式。硬阻塞 Wi-Fi 并从 USB 总线上移除蓝牙。由 EC 启用。参见 #飞行模式开关。 |
Fn+F9 |
是 | 否 | Bluetooth 。由 EC 启用。参见 #飞行模式开关。 |
Fn+F10 |
否 | 是 | 类似于 Fn+F8 ,但不发送 WLAN 。参见 #飞行模式开关。 |
Fn+F12 |
是3 | 是 | 睡眠
|
Fn+Del |
是 | 是 | Insert
|
Fn+Home |
否 | 是 | 无功能。 |
Fn+PgUp |
否4 | 是 | 增加键盘背光亮度。 |
Fn+PgDown |
否4 | 是 | 降低键盘背光亮度。 |
Fn+End |
是 | 是 | 静音
|
Fn+Up |
是 | 是 | 亮度调高
|
Fn+Down |
是 | 是 | 亮度调低
|
Fn+Left |
是 | 是 | 音量减小
|
Fn+Right |
是 | 是 | 音量增大
|
Fn+Q/A |
否4 | 否 | 未映射。 |
Fn+W/Z |
否4 | 否 | 未映射。 |
- 该按键对
xev
和类似工具可见。 - 物理按键上有一个符号,描述了其功能。
- systemd-logind 默认处理此操作。
- 触发未知按键事件。可以使用 setkeycodes(8) 或 输入重映射工具 将其映射到有效的按键码。按下这些按键时,监控
dmesg
。
飞行模式开关
飞行模式组合键 Fn+F8
、Fn+F9
和 Fn+F10
默认禁用。可以通过几种方式重新启用它们。这尤其重要,因为从睡眠状态恢复通常会硬阻塞 Wi-Fi 卡。
使用内核参数
最简单和最安全的方法是添加以下内核参数
acpi_osi=! acpi_osi="Windows 2009"
但是,这可能会更改或禁用其他电源管理功能,因为它的工作原理是欺骗 ACPI DSDT,使其认为它正在旧版本的 Windows 上运行。
使用 EC (嵌入式控制器)
另一种更精确、略有风险但更完整的解决方案,不涉及 ACPI,是使用 iswAUR 写入笔记本电脑的 EC,以暂时恢复开关的功能。在偏移量 0x34
处写入字节 0x30(48)
。除非您激活了上面的内核参数,否则写入前的值应为 0x50
。使用 isw -c
检查。
# isw -s 0x34 48
几秒钟后,按键组合应起作用。
此外,在恢复飞行模式功能后,在偏移量 0x2e
处写入 1
(禁用) 或 9
(启用) 将更改无线电射频开关的状态
# isw -s 0x2e 9
这些命令可以用作 systemd 单元和其他脚本的一部分,以自动化控制平台的飞行模式并缓解睡眠恢复问题。
执行这些操作的风险自负。 偏移量应该对您来说是相同的,但在写入之前,始终使用 isw -c
双重检查您自己的 EC 内存转储,将值与上述值进行比较。 除非您知道自己在做什么,否则不要写入任何其他位置。如果您遇到意外问题,您可能需要通过关闭笔记本电脑并移除电池或在底部按下针孔开关 10 秒钟(在 AC 电源线断开的情况下)来重置 EC。在启动前连接电源线。
更详细的解释可以在 Talk:MSI_GS65#Unblocking wifi after sleep 页面上找到。
触摸板
多指手势不能开箱即用,但可以使用 libinput-gesturesAUR 检测到。
散热
“Fancontrol (lm-sensors)” 或 “NoteBook Fan Control (NBFC)” 不支持风扇控制,但通过使用工具 iswAUR,您可以像在 Windows 上使用 Dragon Center 一样控制风扇。
麦克风
GS65 配备了双麦克风,这对于降噪和回声消除以及通过波束成形技术抑制背景声音非常有用。为了充分利用它,请将以下行添加到 /etc/pulse/default.pa
load-module module-echo-cancel use_master_format=1 aec_method=webrtc aec_args="beamforming=1 mic_geometry=-0.025,0,0,0.025,0,0" set-default-source alsa_input.pci-0000_00_1f.3.analog-stereo.echo-cancel
此外,将 analog_gain_control=0
添加到 aec_args
以禁用自动增益控制也可能很有用。
已知问题
锁死问题 (lspci 和 poweroff 挂起)
症状:
- lspci 挂起
- poweroff 挂起
适用于:Arch 启动 ISO 和安装了 nouveau 或未安装 nvidia 驱动程序的系统。参见 NVIDIA Optimus#锁死问题 (lspci 挂起)。
解决方案:
- Arch ISO: 将
modprobe.blacklist=nouveau
添加到内核参数 (https://superuser.com/a/1301487)。 - 使用 nvidia 的系统:不应遇到此问题。bbswitch 可能无法工作并导致此问题。
- 使用 nouveau 的系统:将
nouveau.runpm=0
添加到内核参数。这将禁用运行时电源管理,而运行时电源管理是导致此问题的根本原因。
Cheese 在打开摄像头时挂起
可以通过安装 vlc 并运行来修复此问题
$ vlc v4l:// :v4l-vdev="/dev/video0"
执行此操作后,cheese 应该可以正常工作。
从挂起唤醒后 Wi-Fi 被硬阻塞 (飞行模式)
从挂起唤醒后,Wi-Fi 将处于飞行模式。[1]
# rfkill list
1: phy0: Wireless LAN Soft blocked: no Hard blocked: yes
Wi-Fi 可以通过以下方式重新激活:要么使用飞行模式组合键两次,要么通过休眠并重启。
一种缓解此问题的方法是将 systemd 设置为休眠而不是挂起。
/etc/systemd/logind.conf
HandleSuspendKey=hibernate HandleLidSwitch=hibernate
系统冻结
图形界面偶尔会冻结,键盘会无响应,但音频会继续运行。这种情况往往发生在 CPU 温度很高且 CPU 正在降频时。
目前尚无已知的解决方案。
尚不清楚是什么原因导致此问题
# journalctl -r --boot -1
Jul 22 20:27:40 almsi kernel: nvidia-modeset: ERROR: GPU:0: Failed to allocate memory for the display color lookup table.
问题由 Intel E2500 Wi-Fi 网卡引起。
# journalctl -f
iwlwifi 0000:00:14.3: BIOS contains WGDS but no WRDS
Wi-Fi 网卡请求硬件重置。(系统将冻结 +/- 10 秒)
通过更换 Wi-Fi 网卡修复。
挂起后显示输出不工作
如果笔记本电脑在连接另一台显示器的情况下挂起,则唤醒后所有显示输出都无法识别何时有外部显示器连接到任何端口。这种情况在重启后仍然存在。令人担忧的是,即使重启进入 Windows 系统后也仍然存在。
一种解决方法是启动进入 Windows,挂起笔记本电脑,然后再唤醒它。连接的显示器然后在重启进入 Windows 或 Arch 时将被识别。另一种解决方法是挂起和唤醒,直到连接的显示器被识别。有时这需要多次尝试,但它可以避免必须启动进入 Windows。
另一种解决方法是禁用音频设备。
blacklist-intel_snd_suspend.conf
#for kernel 4.x blacklist snd_hda_intel #for kernel 5.x - additional modules, if not disable it - suspend not working blacklist snd_sof_intel_hda blacklist snd_sof_intel_hda_common blacklist sof_pci_dev blacklist snd_sof_intel_byt blacklist snd_sof_intel_ipc