跳转至内容

MSI P15

来自 ArchWiki

本文或章节未遵循 笔记本电脑页面指南

原因: 缺少功能键表 (请在 Talk:MSI P15 讨论)

此笔记本电脑也可能被称为 Prestige 15 或 A10SC

硬件 PCI/USB ID 是否工作?
触控板 06cb:cdaa
键盘
GPU (Intel) 8086:9bca
GPU (NVIDIA) 10de:1f91
Thunderbolt 8086:15eb 未测试
Wi-Fi 8086:02f0
蓝牙 8087:0026
摄像头 5986:211c
读卡器 10ec:5250
指纹识别器 06cb:009b

安装

Secure Boot 在首次启动时需要禁用,但之后可以进行配置。此笔记本电脑支持恢复出厂密钥和安装自定义密钥。

如果需要,此笔记本支持 高级 UEFI 设置

Wi-Fi

有时无线网卡在启动时会卡住,需要重置,也可以通过重新加载 `iwlwifi`、`iwlmvm` 并重启 `wpa_supplicant` 来实现。

功能键

所有 Fn 键应该都可以即插即用,但 `Fn12`、`Fn4`、`Fn5` 和 `Fn7` 除外。后者不发送 Fn 输入,而是发送 `F7` 键,因此可以轻松分配。关于其他 Fn 键,`Fn+F4` 映射为键码 93,因此可以使用 xmodmap 将其分配回其原始功能 (触摸板切换)。

 ~/.Xmodmap
keycode  93 = XF86TouchpadToggle NoSymbol XF86TouchpadToggle

关于 `Fn5` 和 `Fn12`,它们会发送一个键码,并且需要按照 Map scancodes to keycodes 中的描述进行配置,使用 `udev` 而不是 `setkeycodes`,因为后者似乎不起作用。这可以通过修改文件 ` /lib/udev/hwdb.d/60-keyboard.hwdb` 或其他方式实现,在 `# Micro-Star` 部分的末尾添加以下内容:

evdev:atkbd:dmi:bvn*:bvr*:bd*:svnMicro-Star*:pn*A10SC*:pvr*
 KEYBOARD_KEY_f1=f20
 KEYBOARD_KEY_f2=f21

麦克风静音按钮现在应该可以即插即用,但屏幕旋转按钮需要一个脚本来切换旋转。这可以通过以下脚本实现:

本文章或章节需要扩充。

原因: `xrandr` 仅在 X11 上工作。在 Wayland 上,你需要类似 `gnome-randr` 或 `kscreen-doctor` 的东西,或者你所使用的 compositor 的等效项。(请在 Talk:MSI P15 讨论)
toggle_rotation.sh
#!/bin/sh
# This shell script is PUBLIC DOMAIN. You may do whatever you want with it.

TOGGLE=/tmp/.toggle

if [ ! -e $TOGGLE ]; then
    touch $TOGGLE
    xrandr -o inverted
else
    rm $TOGGLE
    xrandr -o normal
fi

该脚本需要保存在某个地方并具有执行权限,然后添加到当前使用的桌面环境的快捷菜单中,最后启用以触发 `Fn12`。之后,请以 root 身份运行 `systemd-hwdb update && udevadm trigger` 来更新硬件数据库。

Home 和 End 键

这些按钮分别映射到 `AltGr+PgUp` 和 `AltGr+PgDown`。一个有用的解决方案是修改 `/usr/share/X11/xkb/symbols/$LAYOUT` 中的当前布局,其中 LAYOUT 是当前的键盘布局。这可以通过在该文件的 default 部分写入以下两行来实现:

   key <PGUP>  { [     Prior,      Prior,         Home,    Home      ] };
   key <PGDN>  { [      Next,       Next,          End,    End       ] };

指纹识别器

指纹传感器目前未正常工作,但有一些有前途的项目。

python-validitypam-validity

GitHub 上还有一个 Validity90 项目,用于将 Synaptics `06cb:009b` 设备移植到 Linux - 但该项目已经多年没有更新了。

休眠

如果在休眠后笔记本电脑没有关机而是重启,则需要将 `/etc/systemd/sleep.conf` 修改为以下内容:

/etc/systemd/sleep.conf
HibernateMode=shutdown