独显黑屏
- 主要出现在A卡
- 可以尝试NVRAM>7C436110-AB2A-4BBB-A880-FE41995C9F82>boot-args
- 添加启动参数agdpmod=pikera
- 可以尝试NVRAM>7C436110-AB2A-4BBB-A880-FE41995C9F82>boot-args
核显黑屏
- 笔记本系列架构为Kaby Lake、Coffee Lake,启动系统跑完代码以黑屏结束,或者黑三分钟缓慢亮屏
- 13.4以下的系统为核显添加
enable-backlight-registers-fix
- 或者使用
-igfxblr
启动参数
- 或者使用
- 13.4及以上系统为核显添加
enable-backlight-registers-alternative-fix
属性- 或者使用
-igfxblt
启动参数
- 或者使用
- 13.4以下的系统为核显添加
- 英特尔ICE笔记本开机持续花屏,7-15秒问题
- 为核显添加
enable-dvmt-calc-fix
属性或者直接使用-igfxdvmt
启动参数
- 为核显添加
- 台式机系列启动系统跑完代码以黑屏结束(风扇在转,系统仍在运行)
- 尝试以下几种方法来解决问题
- 添加启动参数
igfxonln=1
核显接口HDMI/DP强制在线 - 如果有条件可以尝试替换显示器口HDMI或者DP
- 定制核显接口
- 添加启动参数
台式机核显接口定制
首先假设我们现在使用的AAPL,ig-platform-id是07009B3E
- 点击跳转
英特尔® 核芯显卡 缓冲帧数据
,在对应架构里找到07009B3缓冲帧数据
ID: 3E9B0007, STOLEN: 57 MB, FBMEM: 0 bytes, VRAM: 1536 MB, Flags: 0x00801302
[1] busId: 0x05, pipe: 9, type: 0x00000400, flags: 0x000003C7 – ConnectorDP
[2] busId: 0x04, pipe: 10, type: 0x00000400, flags: 0x000003C7 – ConnectorDP
[3] busId: 0x06, pipe: 8, type: 0x00000400, flags: 0x000003C7 – ConnectorDP
01050900 00040000 C7030000
02040A00 00040000 C7030000
03060800 00040000 C7030000
现在数据我们找到了,开始定制之前我们了解一点资料:
从图上所示:3E9B0007 一共三组数据端口,即:con0、con1、con2
每组数据都有Bus id (Bus id从01-06)
我们要做的就是使用正确的数据来点亮显示器
3组数据,每组6个Bus ID
数据 | 含义 |
---|---|
00040000 | DP 接口 |
00080000 | HDMI 接口 |
04000000 | 双链 DVI 接口 |
00020000 | 单链 DVI 接口 |
10000000 | VGA 接口 |
简单方法一:配合启动参数igfxonln=1
如果这个不起作用,再继续下面方法
思路:开启3个端口并定义端口类型为 HDMI
framebuffer-patch-enable | 01000000 | 启用核显补丁数据 |
framebuffer-con0-enable | 01000000 | 启用端口1 |
framebuffer-con0-type | 00008000 | 定义端口1,接口为HDMI |
framebuffer-con1-enable | 01000000 | 启用端口2 |
framebuffer-con1-type | 00008000 | 定义端口2,接口为HDMI |
framebuffer-con2-enable | 01000000 | 启用端口3 |
framebuffer-con2-type | 00008000 | 定义端口3,接口为HDMI |
方法二:不需要AAPL,ig-platform-id数据,直接定制,配合启动参数igfxonln=1
(最多重启7次)
思路:配合方法一,并遍历每个端口的bus id,首先开启3个端口并定义端口类型为 HDMI
framebuffer-patch-enable | Data | 01000000 | 启用核显补丁数据 |
framebuffer-con0-enable | Data | 01000000 | 启用端口1 |
framebuffer-con0-type | Data | 00080000 | 定义端口1,接口为HDMI |
framebuffer-con1-enable | Data | 01000000 | 启用端口2 |
framebuffer-con1-type | Data | 00080000 | 定义端口2,接口为HDMI |
framebuffer-con2-enable | Data | 01000000 | 启用端口3 |
framebuffer-con2-type | Data | 00080000 | 定义端口3,接口为HDMI |
下面我们再以上数据基础上,稍作修改指定每个端口的Bus id
framebuffer-patch-enable | Data | 01000000 | 启用核显补丁数据 |
framebuffer-con0-enable | Data | 01000000 | 启用端口1 |
framebuffer-con0-type | Data | 00080000 | 定义端口1,接口为HDMI |
framebuffer-con0- busid | Data | 01000000 | 定义端口1,Busid为:01 |
framebuffer-con1-enable | Data | 01000000 | 启用端口2 |
framebuffer-con1-type | Data | 00080000 | 定义端口2,接口为HDMI |
framebuffer-con1- busid | Data | 02000000 | 定义端口2,Busid为:02 |
framebuffer-con2-enable | Data | 01000000 | 启用端口3 |
framebuffer-con2-type | Data | 00080000 | 定义端口3,接口为HDMI |
framebuffer-con2- busid | Data | 04000000 | 定义端口3,Busid为:04 |
这样我们就测试了:
- 端口1con0的Bus ID 为01
- 端口2con1的Bus ID 为02
- 端口3con2的Bus ID 为04
如果测试黑屏下面我们只要更改Bus id继续测试即可:最多重启7次就可遍历完所有Bus id
只需更改每组数据的Bus id:(framebuffer-conX- busid)
数据一 | 数据二 | 数据三 | 数据四 | 数据五 | 数据六 | 数据七 | |
---|---|---|---|---|---|---|---|
指定Con0 Busid | 01 | 02 | 03 | 04 | 05 | 06 | 01 |
指定Con1 Busid | 02 | 01 | 04 | 03 | 06 | 05 | 05 |
指定Con2 Busid | 04 | 05 | 01 | 02 | 03 | 01 | 06 |
方法三:需要AAPL,ig-platform-id数据,配合启动参数igfxonln=1
(最多重启18次)
ID: 3E9B0007, STOLEN: 57 MB, FBMEM: 0 bytes, VRAM: 1536 MB, Flags: 0x00801302
[1] busId: 0x05, pipe: 9, type: 0x00000400, flags: 0x000003C7 – ConnectorDP
[2] busId: 0x04, pipe: 10, type: 0x00000400, flags: 0x000003C7 – ConnectorDP
[3] busId: 0x06, pipe: 8, type: 0x00000400, flags: 0x000003C7 – ConnectorDP
01050900 00040000 C7030000
02040A00 00040000 C7030000
03060800 00040000 C7030000
framebuffer-patch-enable | Data | 01000000 | 启用核显补丁数据 |
framebuffer-con0-enable | Data | 01000000 | 启用端口1 |
framebuffer-con0-alldata | Data | 01010900 00080000 C7030000 | 定义端口1:接口为HDMI, 并指定端口1的Bus id为 01 |
如果不能正常亮屏,后面只需要把01010900 00080000 C7030000
中的01010900 ….……01060900 把Busid 从01遍历到06即可(重启6次测试)
如果不能正常亮屏再来测试第二组数据
framebuffer-patch-enable | Data | 01000000 | 启用核显补丁数据 |
framebuffer-con1-enable | Data | 01000000 | 启用端口2 |
framebuffer-con1-alldata | Data | 02010A00 00080000 C7030000 | 定义端口2:接口为HDMI, 并指定端口2的Bus id为 01 |
如果不能正常亮屏,后面只需要把02010A00 00080000 C7030000
中的02010A00 ….……02060A00 把Busid 从01遍历到06即可(重启6次测试)
如果不能正常亮屏再来测试第三组数据
framebuffer-patch-enable | Data | 01000000 | 启用核显补丁数据 |
framebuffer-con2-enable | Data | 01000000 | 启用端口1 |
framebuffer-con2-alldata | Data | 03010800 00080000 C7030000 | 定义端口3:接口为HDMI, 并指定端口3的Bus id为 01 |
后面只需要把03010800 00080000 C7030000
中的03010800 ………………………..……03060800 把Busid 从01遍历到06即可(重启6次测试)
暂无评论内容