ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

【亲测有效】ThinkBook 14 G5+ 外接显示器突然无信号 —— Type-C(DP Alt Mode) 失效但 HDMI 正常,从内核日志一路查到 BIOS 放电的完整排查记录

【亲测有效】ThinkBook 14 G5+ 外接显示器突然无信号 —— Type-C(DP Alt Mode) 失效但 HDMI 正常,从内核日志一路查到 BIOS 放电的完整排查记录 机型联想 ThinkBook 14 G5 IRH21HW i5-13500H Ubuntu 24.04.4 LTS Windows 11 双系统关键词Type-C 无信号、DP Alt Mode 失效、USB-C 只有 USB 功能没有视频、HDMI 正常、EC 复位无效、BIOS 禁用内置电池、放电〇、结论先行TL;DR如果你也遇到「Type-C 口充电/USB 正常但外接显示器一直无信号换线、换口、换显示器、换系统都没用HDMI 却完全正常」不用急着报修先试这一招BIOS →Configuration→Disable Building-in Battery禁用内置电池→ 机器自动关机 → 拔掉电源适配器和所有外接 → 长按电源键 30 秒放电 → 接电源开机 → 回 BIOS 把内置电池启用回来我这边亲测一次成功Type-C 的 DisplayPort 输出立刻恢复4K60。下面把整个排查过程、原理和踩的坑都记录下来。一、故障现象起因其实是个小问题笔记本挂起sleep唤醒后外接显示器不亮。排查这个问题的过程中Type-C 的显示输出彻底挂了具体表现显示器走Type-C 一线通显示器原生 Type-C 输入→完全无信号显示器提示No signal然后进待机同一个 Type-C 口USB 数据完全正常显示器的 USB Hub 照样枚举键鼠能用HDMI 口一切正常能出 4K60同一根线 同一台显示器接另一台电脑完全正常→ 线和显示器都没问题换另一个 Type-C 口、Type-C 线正反插 → 全部无效进 Windows 测试 → 同样无信号→ 排除 Linux 驱动问题长按电源键 EC 复位、Thunderbolt 控制器 unbind/bind、显示器断电重启 → 全部无效二、环境信息项目值机型Lenovo ThinkBook 14 G5 IRH21HW主板LNVNB161216社区板号 NB5979-MB-V12CPU13th Gen Intel Core i5-13500HBIOSLBCN29WW2025-03-21系统Ubuntu 24.04.4 LTS内核7.0.0-28-generic显卡Intel Iris Xe集显版无独显显示器4K 显示器原生 Type-C 输入DP Alt Mode HDMI挂起方式platform 默认s2idle排查中被手动改成过deep(S3)三、先搞懂原理Type-C 出图到底经过什么“Type-C 直连不等于Type-C 视频信号”。Type-C 只是接口形状一根线里同时跑三样东西笔记本 Type-C ───────── 同一根线 ───────── 显示器 Type-C │ ├─ CC 线 PD 供电协商 协商高速线这轮给谁用Enter Mode / SVID 0xff01 ├─ D / D- USB 2.0 数据不受 alt mode 影响永远可用 └─ 4 对高速差分对 要么给 USB 3.x要么给 DisplayPort —— 由端口 mux/redriver 切换 │ └─ 切给 DP 之后 → Intel i915 的 DP-x 连接器出图 → 显示器拉 HPD → 读 EDID出图必须走完 4 步步骤谁负责我们这次的情况1. CC 检测 正反识别EC 固件✅ 正常USB Hub 还能枚举2. PD 报文协商Enter ModeDP Alt ModeEC/PD 固件 ↔ 显示器 PD 芯片❓ 卡在这里3. 端口 mux 把高速差分对切给 DP lanesEC 端口开关芯片❌ 断在这里4. i915 输出 DP HPD 读 EDID内核 i915❌ 根本没开始⚠️ 关键点第 2、3 步跑在联想 EC/PD 固件里操作系统完全看不到也管不了。这台机器上/sys/class/typec是空的UCSI 设备USBC000:00一直处于waiting_for_supplier。所以任何在系统里折腾驱动/内核参数的努力都是白费——问题在系统之下。四、排查过程逐条排除4.1 看系统里端口到底有没有信号# 四个连接器状态card1 Intel i915forcinDP-1 DP-2 HDMI-A-1 eDP-1;doecho$c:$(cat/sys/class/drm/card1-$c/status)done# 输出DP-1 disconnected / DP-2 disconnected / HDMI-A-1 connected / eDP-1 connected# EDID 长度0 内核根本没读到显示器身份cat/sys/class/drm/card1-DP-1/edid|wc-c# → 0# 同一根 Type-C 线上的 USB 设备是否还在证明线是通的lsusb|grep-i1a86# → QinHeng Electronics USB HUB显示器内置 Hub结论disconnected EDID0 DP lanes 根本没被接通第 4 步压根没开始而 USB 还在 第 1 步正常。“一条线里两个通路一个活一个死”这是整个问题的钥匙。4.2 排除显示器、线、系统同线同显示器接另一台电脑 → 正常 ⇒显示器和线排除HDMI 从这台笔记本出图 → 正常 ⇒GPU、i915、显示器面板排除进 Windows → 同样无信号 ⇒Linux 驱动/UCSI 排除到这里可以断定故障在笔记本侧的 PD/mux 通路而且不是操作系统层面的。4.3 试试复位类操作全部无效# 1) EC 复位关机后长按电源键 20~30 秒# 2) Thunderbolt 控制器重新加载echo0000:00:0d.2|sudotee/sys/bus/pci/drivers/thunderbolt/unbindsleep3echo0000:00:0d.2|sudotee/sys/bus/pci/drivers/thunderbolt/bind# 3) 显示器断电 30 秒、Type-C 正反插、换线换口# 4) 电源逐个接通/断开讨论 Type-C 供电角色全部无效。原因见 4.4。4.4 为什么这些复位都没用因为只要内置电池还接在主板上EC/PD 控制器就一直有电它的 PD 状态机以及端口 mux 的配置不会被清空。长按电源键只能做到EC 软复位恢复不了被锁死的 alt-mode 状态。验证一下固件信息确认没有遗漏的更新途径# 固件更新历史有没有被后台刷过固件fwupdmgr get-history# → No history# BIOS/EC 等固件设备清单含 UEFI Device Firmwarefwupdmgr get-devices2/dev/null|grep-A3UEFI Device Firmware# BIOS 版本cat/sys/class/dmi/id/bios_version# → LBCN29WW2025-03-214.5 真凶浮现一次deep(S3) 挂起既然 Type-C 之前是好的就去翻内核日志看它是什么时候没的# 所有挂起/恢复记录journalctl --no-pager|grep-EPM: suspend (entry|exit)# 关键输出截取# Sep 26 14:35:29 PM: suspend entry (s2idle) → 14:35:32 suspend exit 只挂了 3 秒没事# Sep 26 14:53:31 PM: suspend entry (deep) ← 全机历史唯一一次 S3# 之后没有任何 PM: suspend exit# Sep 26 15:01:37 ← 冷启动说明这中间被强制断电了# 统计一下到底挂起过几次 deepjournalctl --no-pager|grep-cPM: suspend entry (deep)# → 1journalctl --no-pager|grep-cPM: suspend entry (s2idle)# → 111时间线这是破案的关键时间事件Type-C 状态14:36:54手动把/sys/power/mem_sleep设成deep埋雷正常14:51:30实测DP-1 connected 布局应用成功✅ 正常14:53:29logindThe system will suspend now!—14:53:31PM: suspend entry (deep)此后再无suspend exit15:01:37冷启动进 S3 后没恢复被强制断电❌ 从这一刻起DP-1永远是disconnected结论这台机器默认s2idle111 次全好而deep(S3) 只在历史里出现过1 次恰好就是出事那次且没有恢复记录。S3 会把 Type-C/TCSS 控制器整个断电重来而这台机器的 EC 固件没能把 DP Alt Mode 恢复回来于是 PD/mux 状态被永久锁死。五、根因分析触发把mem_sleep从平台默认的s2idle改成deep(S3)然后执行挂起。该机型的 S3 路径明显没有被良好验证111 次挂起全是 s2idledeep 只有这一次。损坏点S3 进入/失败的恢复过程让 Type-C 的 PD 状态机 端口 mux 停在中间态之后 EC 再也不会重新协商Enter Mode。为什么不恢复EC/PD 状态是持久的普通关机/重启/EC 软复位都不清必须让 EC 真正断电才能重新初始化。操作系统无能为力整条 PD/alt-mode 逻辑不在 Linux也不在 Windows里系统里没有任何可操作对象。六、最终解决方案重点亲测有效6.1 核心思路让主板的 EC/PD 控制器彻底断电一次。联想官方为此提供了 BIOS 选项Disable Building-in Battery它会把主板与电池的通信切断机器自动关机后主板含 EC/PD 控制器就能完全放电。6.2 操作步骤严格按顺序插好电源适配器⚠️ 必须禁用电池后没有适配器无法开机开机狂按F1ThinkBook 常见 F1不行就试 F2进入 BIOS找到Configuration→Disable Building-in Battery部分版本菜单叫Power/禁用内置电池回车 → 选YES→机器自动关机拔掉电源适配器并拔掉所有外接设备Type-C 显示器线、扩展坞、USB 设备长按电源键 30 秒释放主板残余电荷接上电源适配器→ 开机进 BIOS 确认内置电池已启用多数机型接上适配器后自动恢复若显示仍为禁用手动启用回去插入 Type-C 显示器 →问题解决✅6.3 注意事项血泪教训⚠️手边必须有原装/可用适配器再操作否则禁用电池后只能干瞪眼官方知识库明确写了这条⚠️ 恢复供电后记得回到 BIOS 把内置电池启用回来ℹ️ 该选项需要 BIOS 支持部分机型 BIOS 里没有这一项那就只能去联想服务站做硬放电或直接报修七、验证结果修复后重启后实测forcinDP-1 DP-2 HDMI-A-1 eDP-1;doecho$c:$(cat/sys/class/drm/card1-$c/status);done# DP-1: connected ← 回来了# DP-2: disconnected# HDMI-A-1: connected# eDP-1: connectedcat/sys/class/drm/card1-DP-1/edid|wc-c# → 256EDID 正常读取 真的协商成功xrandr|grep-E^(DP|HDMI|eDP)# DP-1 connected primary 3840x216000 ← 4K60# HDMI-1 connected 3840x216038400# eDP-1 connected 2880x180076800Type-C 的 DP Alt Mode 完全恢复4K60 正常出图USB Hub 也照常工作。八、踩坑与经验总结✅ 该做的先分层看现象Type-C 出问题先lsusb看 USB 通路、cat /sys/class/drm/cardX-DP-x/status看 DP 通路、edid | wc -c看有没有读到显示器。“一条线里两个通路一活一死”基本就锁定 PD/mux。先跨系统验证Windows 试一次能迅速把驱动问题和固件/硬件问题分开。翻PM: suspend entry (deep/s2idle)日志挂起相关的显示故障十有八九和它有关。真复位要断电池EC 软复位 ≠ 真正断电Disable Building-in Battery才是关键一招。❌ 别做的不要把/sys/power/mem_sleep设成deep尤其笔记本平台默认给的是s2idle时。cat/sys/power/mem_sleep# 我这款修好后是[s2idle] deep# 如需查看/切换不持久重启复位# echo s2idle | sudo tee /sys/power/mem_sleep不要用反复禁用/启用外接输出来模拟插拔测试——这等于反复把 Type-C 上的 DP 链路 down/up会加重 PD 状态机的负担。这是我这次的血泪教训排查中途做过几轮输出通断虽然当时验证还是好的但确实让 PD 状态重新协商过多次。刷 BIOS / PD 固件时绝对不能中断PD 固件升级画到一半关窗口会导致Type-C 口永久损坏社区已有实例。升固件务必接电源、勿断电、勿关窗口。九、参考链接联想官方知识库《Thinkbook、扬天、ThinkPad 部分笔记本禁用内置电池的方法》——BIOS 路径Configuration → Disable Building-in Battery及必须接适配器的注意事项知乎《笔记本 Type-C 口接 Type-C 转 DP 线连显示器无信号问题》——同为雷电/Type-C 出图无信号、HDMI 正常最终靠BIOS 禁用内置电池 放电解决知乎《解决 Type-C 扩展坞转 HDMI 和 DP 无信号问题》——针对之前用得好好的、某天突然不行的场景强调禁用内置电池这一步CSDN《【ThinkBook 16 电脑重做系统 type-c 接口部分功能失效解决方案】》——ThinkBook 同系机型充电/外接硬盘正常、接显示器无信号最后靠 BIOS 禁电放电解决CSDN《ThinkBook16 G4 ARA 开启 USB4 注意PD 固件升级中途关窗口会弄坏 Type-C 口》——PD 固件升级中断会永久损坏 Type-C 的实例CSDN《Lenovo Vantage 解决 ThinkBook 16 2025 type-c 显示器无信号问题》——另一种成因独显直连模式禁用核显导致 DP Alt Mode 失效集显机型不受影响GitHub issuesomarchy#11908USB-C 扩展坞挂起后外接屏不回来、aquamarine#403USB-C DP-alt 重新插拔后不再识别——英文社区同类现象写在最后这类USB 好、视频死的 Type-C 故障90% 的精力会浪费在操作系统层面。正确的顺序应该是先用内核连接器状态 USB 枚举把故障分层 → 跨系统验证排除驱动 → 查挂起日志找触发点 →直接上 BIOS 断电池放电→ 再不行才考虑固件/硬件。希望这篇记录能帮你少走几小时弯路。如果对你有帮助欢迎点赞 收藏也欢迎在评论区补充你遇到的现象和解决办法 记录时间2026-09-26 机型ThinkBook 14 G5 IRH (21HW) 系统Ubuntu 24.04.4 LTS / Windows 11
返回列表