如何禁用圈数检测?

如何禁用圈数检测?

圈数检测

我在 ThinkPad T15 Gen 2i 上运行 Ubuntu,并且经常遇到由于圈数检测而导致性能模式被禁用的问题。

总的来说,我对圈数检测并不是很满意,因为它只是一个运动检测器,当设备稳定但倾斜时也会被激活,但如果“运动检测器”不正确,请纠正我。

如果我只是将笔记本电脑在桌子上移动,或者将其倾斜在坚硬的平面上,就会引起问题。

我如何禁用圈数检测?

我想知道是否有一些解决方法,以及如何完全禁用它。如果没有软件方法,是否可以在硬件本身上禁用它?

答案1

这是硬件问题。固件向 Ubuntu 报告它在你的膝盖上,因此不允许你切换到“性能”模式,因为这是为了防止你的膝盖被笔记本电脑的热量烫伤。

放置笔记本电脑的表面可能很热,所以系统会认为它放在您的膝盖上?尝试在笔记本电脑下面放一些凉爽的东西。

临时修复可能是...

sudo -i
echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

GNOME 开发者评论在上面:

这是固件报告的,我们无法控制它。请尝试更新到联想提供的最新固件。如果这没有帮助,我们可以尝试找出内核或固件代码中是否存在错误。您还可以/sys/devices/platform/thinkpad_acpi/dytc_lapmode在出现消息时验证它是否为 1。如果设备在桌子上,它应该是 0,但可能需要很长时间才能切换。

答案2

我在 Thinkpad T590 上遇到了同样的问题!这是由一个小型加速度计引起的,旨在当笔记本电脑不平整且不稳定时禁用性能模式。

花了几个小时试图找出解决方案后,最好的解决方法就是修改内核,使其始终报告传感器为负值。这是一个非常简单的修复方法,您只需更改一行即可thinkpad_acpi模块。

我已经编写了一个补丁程序,可以使用 dkms 自动执行此操作,因此它会在您更新内核时继续存在。

如果你反对修补内核模块,你可以“猴子补丁”内核的侵入性要小得多。之前链接的 repo 中也有一些关于此的详细信息。

答案3

如果其他所有方法都失败了,那么就只有暴力破解了:

while true;
do
    A=$(cat /sys/firmware/acpi/platform_profile)
    if [ ${A} != 'performance' ]; then
        echo ${A}
        echo performance |  sudo tee  /sys/firmware/acpi/platform_profile   
    else
        echo ${A}
    fi
    sleep 0.5;
done

答案4

我不知道您是否遇到过同样的问题,但在我的 T490 上,我发现了同样的问题,问题根本不是关于圈数检测的。在我的 UEFI 设置中有一个电源部分,在该电源部分中,OnBattery 配置文件的电源模式设置为平衡。我将其设置为性能模式,重新启动后,我可以在 Gnome 上使用性能配置文件,弹出窗口消失了/只需在您的 UEFI 设置中搜索电源即可。您的问题也可能是相同的!

相关内容