选机助手
关闭
*产品分类:
  • 笔记本
  • 台式机
  • thinkplus选件
使用场景:
  • 超薄便携
  • 性能旗舰
  • 轻薄独显
  • 设计创作
  • 日常办公
  • 翻转触屏
价格选择:
  • 5000元以下
  • 5000-8000元
  • 8000-11000元
  • 11000-15000元
  • 15000元以上
尺寸选择:
  • 13.3英寸
  • 14英寸
  • 15.6英寸
确认

[分享] Thinkbook 14p Gen2 ACH Ubuntu/Linux睡眠后掉硬盘「已解决」

发表于 2022-4-6 16:13   |   来自Microsoft Edge浏览器 [复制链接]   
15837 13  

本帖最后由 kingtouse 于 2022-4-8 11:32 编辑

2022.04.08
最后还是自己动手解决了联想BIOS给Linux提供的ACPI表的问题,并且对Linux增加了S3休眠的支持。
---

如题。尝试过Ubuntu/Kubuntu/Manjaro/Arch,内核版本5.10、5.15、5.16、5.17,都可以正常使用。但只要一旦睡眠,SSD就掉了。
以为是SSD问题,更换了海康威视C2000eco 1T后,问题还是100%复现。
启动Ubuntu可以正常使用,但是一旦睡眠再唤醒,会出现IO Error,然后立马EXT4 Error。

为了定位问题,
使用live cd启动Ubuntu虚拟环境,然后点击睡眠,唤醒后,live cd正常使用,但是SSD掉了,fdisk -l也看不到/dev/nvme0n1。再次点击睡眠,SSD又可以被侦测到,/dev目录也可以看到/dev/nvme0n1。

这个问题很奇怪,现在导致我的Thinkbook 14p无法正常使用Linux,十分影响使用。

BIOS版本:2022.03月最新的39版本。尝试回退过,也无效。

希望Thinkbook 14p BIOS团队解决下这个问题,这个问题让我很苦恼,我第一台联想笔记本就遇到这个问题,之前一直用华硕的都没有遇到过这么离谱的问题。

还有支持下社区提出的S3睡眠问题。
13条回复
来自Microsoft Edge浏览器  楼主| 发表于 2022-4-8 11:32:08
本帖最后由 kingtouse 于 2022-4-12 14:41 编辑

最后,我自己找到了问题和解决方案。 现在S3休眠,NVMe掉盘正常工作。
也许有点复杂,但是有效的。

此问题的最佳解决方案是自定义 Linux 内核。

1.将联想BIOS提供的默认DSDT替换为我自定义的DSDT文件。 建议使用 CPIO 补丁或重新编译内核。 大家可以查看 DSDT 的 Arch wiki了解如何替换。这个启用了S3休眠以及修复了一个\_SB.LID0的ACPI Error问题。

适用于 Thinkbook 14p(BIOS 版本 39)的 DSDT 修补文件:https://gist.github.com/Kingtous/9b20742899d7a0bfbd82d0eb43fa412b。顺手上传了一份到社区,github上不去的可以直接到帖子里面下载,里面的aml是编译好的dsdt,aml文件可以直接cpio载入,hex文件可以编译进Linux内核。

dsdt.zip (143 KB, 下载次数: 307)

回复

使用道具 举报

来自Microsoft Edge浏览器  楼主| 发表于 2022-4-8 11:39:54
本帖最后由 kingtouse 于 2022-4-8 11:43 编辑

有遇到问题的hxd吗

dsdt.zip

回复

使用道具 举报

来自Chrome浏览器 发表于 2022-4-11 12:07:29
终于等到一个解决方案,非常感谢。
我不太懂内核和BIOS,不太干贸然动手,想再请教一下。
我查看了arch wiki, https://wiki.archlinux.org/title/DSDT
请问是按照 Using a CPIO archive 的说明操作吗?

回复

使用道具 举报

来自Microsoft Edge浏览器  楼主| 发表于 2022-4-11 23:34:00
lenovo50014493 发表于 2022-4-11 12:07
终于等到一个解决方案,非常感谢。
我不太懂内核和BIOS,不太干贸然动手,想再请教一下。
我查看了arch wik ...

如果要解决S3睡眠问题,可以按CPIO处理,但是每次都得在内核启动加上这个cpio启动参数。如果是掉盘,需要改一行代码(可以看我的github的commit)。
我自己是直接编译了一个内核(可以看arch wiki里面怎么编译,加入自定义DSDT)thinkbook14p的cpu还是很强的,我直接14线程编译,不到1小时全部编译完了。
回复

使用道具 举报

来自Chrome浏览器 发表于 2022-4-11 23:50:51
终于有大佬给出了解决S3睡眠的方案.可惜我的tb14p因为这个S3睡眠问题已经卖了,看来我要重新买回14P了.先研究下.谢谢大佬了!!!!
回复

使用道具 举报

来自安卓版联想 发表于 2022-4-12 12:31:47
牛逼呀
回复

使用道具 举报

来自安卓版联想 发表于 2022-4-12 12:47:27
如果只是需要让睡眠正常可用,只需要修改dsdt么
回复

使用道具 举报

来自Microsoft Edge浏览器  楼主| 发表于 2022-4-12 14:40:34
lenovo77137438 发表于 2022-4-12 12:47
如果只是需要让睡眠正常可用,只需要修改dsdt么

是的。

另外勘误一下,CPIO是导入.aml文件
回复

使用道具 举报

来自安卓版联想 发表于 2022-4-12 18:31:15
kingtouse 发表于 2022-4-12 14:40
是的。

另外勘误一下,CPIO是导入.aml文件
已经成功了,感谢大佬
回复

使用道具 举报

来自Chrome浏览器 发表于 2022-5-30 23:28:17
这个能解决win11的睡眠问题吗?大神,有没有傻瓜教程,看不太懂如何操作。谢谢
回复

使用道具 举报

来自Microsoft Edge浏览器 发表于 2022-6-8 09:18:12
請問這個作法可以用在ThinkBook 16+嗎?
回复

使用道具 举报

来自Chrome浏览器 发表于 2022-6-12 05:35:14
感谢大佬
回复

使用道具 举报

来自Microsoft Edge浏览器 发表于 2022-7-20 23:59:08
感谢大佬!想问一下 40的 BIOS支持吗?谢谢!小白 能容易修改吗?

最后例行吐槽:联想的客服和 工程师都是辣鸡!吃屎去吧!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则