Closed hjmmc closed 4 years ago
测试了两台显示器,一台的情况是开机接入正常,但拔出100%黑屏,另一台是开机接入黑屏。
测过了应该跟线无关,不过是 HDMI1.4 还是 HDMI2.0 的线都是一样,拔出黑屏
另外测过了打开DVMT 64M也是无法解决这样的情况的,补丁也试了很多,暂时是没能力修复了,只能用开机脚本曲线救国
太赞了!联想昭阳k43c-80 同样是i5 8250U,用了patch以后完美驱动HDMI,解决内屏黑屏的困扰。就是有点没搞清原理,是否可以简单解析一下 😄
<key>PciRoot(0x0)/Pci(0x2,0x0)</key> <dict> <key>AAPL,ig-platform-id</key> <data>AAAWWQ==</data> <key>complete-modeset-framebuffers</key> <data>AAAAAAAAAAE=</data> <key>force-online</key> <data>AQAAAA==</data> <key>force-online-framebuffers</key> <data>AAAAAAAAAAE=</data> <key>device-id</key> <data>FlkAAA==</data> <key>enable-hdmi20</key> <data>AQAAAA==</data> <key>framebuffer-con1-enable</key> <data>AQAAAA==</data> <key>framebuffer-con1-type</key> <data>AAgAAA==</data> <key>framebuffer-con2-enable</key> <data>AAAAAA==</data> <key>framebuffer-con2-index</key> <data>/////w==</data> <key>framebuffer-fbmem</key> <data>AACQAA==</data> <key>framebuffer-patch-enable</key> <data>AQAAAA==</data> <key>framebuffer-stolenmem</key> <data>AAAwAQ==</data> <key>framebuffer-unifiedmem</key> <data>AAAAgA==</data> </dict>
主要是加了这个参数 complete-modeset-framebuffers
,详情可以看 WhateverGreen 相关文档
现象:1.开机后通过HDMI(test via hdmi 1.4)接上(或开机前接上)显示器,进入到登录界面后很快变成黑屏,而且无论怎么开合盖子也无法激活屏幕。2.开机后接入HDMI,可以显示,但非常卡顿,再拔出时导致内屏黑屏,可能过30秒后才恢复。
可能的解决方法(开机后手动触发内屏熄灭):
1.开机后手动开合一次屏幕再接入HDMI线缆
2.换成HDMI2.0或1.2线缆?不确定HDMI线缆的版本对黑屏是否有影响,目前没有其它线缆测试。
3.使用触发角(Hot Corners),在系统设定某个触发角功能为「显示器置入睡眠」(Put Display to Sleep),进入系统后移动鼠标触发显示器睡眠,再接入HDMI
4.使用命令行代替触发角功能 Run shell
pmset displaysleepnow
5.使用开机启动脚本
launchctl
Create file
/Library/LaunchDaemons/com.magicbokk.displaysleepnow.sh
Create file
/Library/LaunchDaemons/com.magicbokk.displaysleepnow.plist
使用终端运行安装启动脚本,开机进入登录界面前脚本自动触发了内屏熄灭&点亮,之后再接入HDMI就正常了