最近把工作电脑换成了机械革命无界 15XPro 暴风雪,在收货后小小折腾了一两天后,终于让他大部分的功能工作正常了。
键盘背光跟散热风扇的驱动
可以参考这篇文章中的介绍安装来自德国一家公司维护的驱动。驱动安装好后,还可以安装类似鸡哥控制面板的 TUXEDO 控制面板,切换性能模式跟调整键盘背光 RGB:

内置屏幕掉帧
笔记本内置屏幕在 60Hz 时会频繁随机掉帧,这个现象跟 VRR 有关,需要强制启用 VRR。

除此之外我还遇到了使用 Spectacle 截图时,外置显示器闪烁的问题,需要强制关闭外置显示器的 VRR。
睡眠(suspend)后被立即唤醒
当通过睡眠按键(Fn + F1)或者 systemctl suspend
进入睡眠状态时,系统会被立即唤醒,需要第二次尝试才能成功睡眠。
反复阅读 https://wiki.archlinux.org/title/Power_management 系列文章后,我在 deepseek-r1 的帮助下成功地找出了这个问题的根因。
TLDR
创建一个 udev rule,禁用 PS/2 键盘的 Wakeup Trigger。
# sudoedit /etc/udev/rules.d/99-disable-keyboard-wakeup.rules
# Disable wakeup for PS/2 keyboard controller
ACTION=="add", SUBSYSTEM=="serio", KERNEL=="serio0", ATTR{power/wakeup}="disabled"
然后重载 udev rules:
sudo udevadm control --reload-rules
sudo udevadm trigger
重启系统后验证是否生效:
$ cat /sys/devices/platform/i8042/serio0/power/wakeup
disabled
现在尝试睡眠,就不会被立即唤醒了。
排查过程
首先安装 amd-debug-tools
,运行 amd-s2idle test
,查看当前系统是否满足 s2idle 的要求:
$ amd-s2idle test
💻 AMD Ryzen AI 9 H 365 w/ Radeon 880M (family 1a model 24)
💻 MECHREVO WUJIE Series (STX\KRK)
🐧 Arch Linux
🐧 Kernel 6.12.32-1-lts
🔋 Battery BAT0 (OEM standard) is operating at 100.00% of design
✅ ASPM policy set to 'default'
✅ GPIO driver `pinctrl_amd` available
✅ PMC driver `amd_pmc` loaded (Program 11 Firmware 93.4.0)
✅ USB3 driver `xhci_hcd` bound to 0000:65:00.4, 0000:67:00.0, 0000:67:00.3, 0000:67:00.4
✅ USB4 driver `thunderbolt` bound to 0000:67:00.6
✅ System is configured for s2idle
✅ GPU driver `amdgpu` bound to 0000:65:00.0
✅ PC6 and CC6 enabled
✅ SMT enabled
✅ IOMMU properly configured
✅ ACPI FADT supports Low-power S0 idle
🚦 Logs are provided via dmesg, timestamps may not be accurate over multiple cycles
✅ LPS0 _DSM enabled
✅ WLAN driver `mt7921e` bound to 0000:62:00.0
❌ Kernel is tainted: 12288
💯 Your system does not meet s2idle prerequisites!
🗣️ Explanations for your system
🚦 Kernel is tainted
A tainted kernel may exhibit unpredictable bugs that are difficult for this script to characterize. If this is intended behavior run the tool with --force.
For more information on this failure see:https://gitlab.freedesktop.org/drm/amd/-/issues/3089
可以看到这里提示我的 kernel 被 tainted
了,这是安装 mechrevo-drivers-dkms
引起的,可以忽略。
既然系统符合 s2idle 的要求,说明可能是某个设备在唤醒系统,deepseek 给出了接下来的排查思路,启用 PM 日志:
# Enable verbose PM debugging
echo 1 | sudo tee /sys/power/pm_print_times<br>echo 1 | sudo tee /sys/power/pm_debug_messages
# Now try to suspend again
systemctl suspend
# Check dmesg after resume
dmesg | grep -i "wake\|resume\|acpi"
再次执行 systemctl suspend
复现问题后,可以在 dmesg 中看到下面的日志:
[ 4636.873132] xhci_hcd 0000:67:00.4: PM: pci_pm_suspend_noirq returned 0 after 42252 usecs
[ 4636.873146] thunderbolt 0000:67:00.6: PM: pci_pm_suspend_noirq returned 0 after 42269 usecs
[ 4636.873169] pcieport 0000:00:08.3: PM: calling pci_pm_suspend_noirq @ 29723, parent: pci0000:00
[ 4636.878632] pcieport 0000:00:02.1: PM: pci_pm_suspend_noirq returned 0 after 10561 usecs
[ 4636.878653] pcieport 0000:00:03.2: PM: pci_pm_suspend_noirq returned 0 after 11025 usecs
[ 4636.885192] pcieport 0000:00:08.1: PM: pci_pm_suspend_noirq returned 0 after 12279 usecs
[ 4636.885300] pcieport 0000:00:08.3: PM: pci_pm_suspend_noirq returned 0 after 12119 usecs
[ 4636.885359] PM: noirq suspend of devices complete after 54.690 msecs
[ 4636.885376] ACPI: _SB_.PCI0.GPP5: LPI: Constraint not met; min power state:D1 current power state:D0
[ 4636.885381] ACPI: _SB_.PCI0.GPP6: LPI: Constraint not met; min power state:D1 current power state:D0
[ 4636.885388] ACPI: _SB_.PCI0.GPP4.SDCR: LPI: Constraint not met; min power state:D3hot current power state:D0
[ 4636.886012] PM: Triggering wakeup from IRQ 9
[ 4636.886504] ACPI: _SB_.PEP_: Successfully transitioned to state screen off
[ 4636.887420] ACPI: _SB_.PEP_: Successfully transitioned to state lps0 ms entry
[ 4636.887625] ACPI: _SB_.PEP_: Successfully transitioned to state lps0 entry
[ 4636.888555] PM: suspend-to-idle
[ 4636.888592] ACPI: EC: ACPI EC GPE status set
[ 4636.888623] ACPI: PM: Rearming ACPI SCI for wakeup
[ 4636.891279] PM: Triggering wakeup from IRQ 1
[ 4639.593124] amd_pmc: SMU idlemask s0i3: 0xffff1abd
[ 4639.593188] ACPI: PM: Wakeup unrelated to ACPI SCI
[ 4639.593189] PM: resume from suspend-to-idle
[ 4639.594699] amd_pmc AMDI000A:00: Last suspend didn't reach deepest state
[ 4639.595185] ACPI: _SB_.PEP_: Successfully transitioned to state lps0 exit
[ 4639.595760] PM: Triggering wakeup from IRQ 9
[ 4639.596746] ACPI: _SB_.PEP_: Successfully transitioned to state lps0 ms exit
[ 4639.597719] ACPI BIOS Error (bug): Could not resolve symbol [_SB.ACDC.RTAC], AE_NOT_FOUND (20240827/psargs-332)
[ 4639.597729] ACPI Error: Aborting method _SB.PEP._DSM due to previous error (AE_NOT_FOUND) (20240827/psparse-529)
[ 4639.597737] ACPI: _SB_.PEP_: Failed to transitioned to state screen on
Deepseek 大胆推断是 IRQ 1 (typically the i8042 keyboard controller) 造成的问题,可以通过下面的方法来验证:
echo "disabled" | sudo tee /sys/devices/platform/i8042/serio0/power/wakeup
重试睡眠后,系统果然安然入睡了~
进入 s2idle 睡眠后,一晚上大概会消耗 10% 左右的电量。

Firefox 播放视频时会触发 GPU 图形崩溃
当启用 Firefox 的硬件加速后,播放视频会让 GPU 崩溃,丢失全部的显存内容。还好这个问题已经被 AMD 修复,升级到最新的内核即可。
色彩管理
机械革命提供了官方的色彩文件,但必须要在 Windows 下安装机械革命控制台才能下载(官方客服并不受理此类咨询)。加载了官方的色彩配置文件后,可以比较明显地缓解低亮度下对比度过低的问题。为了方面读到这篇文章的你,点击下面的链接就可以下载到这份色彩配置文件~
ipfs://QmaR5ZxFXNwcsjn9XZq6CpDfRFyoffDEr9fpi15Hmb31K7
开机后有概率屏幕卡死
开启自适应同步后可解决,感谢 LY 提供的解决方案。

回复 Zeeko 取消回复