聊聊如何正确驱动集成显卡HDMI(包括视频和音频)
必备条件:
1、必须使用AppleHDA驱动声卡(仿冒、clover、applealc都可以的),使用voodoo驱动声卡应该不行的。
2、dsdt或者ssdt中关于集成显卡的gfx0改为IGPU。

  1. #Maintained by: RehabMan for: Laptop Patches#graphics_Rename-GFX0.txt
  2. # Note: Most DSDT/SSDTs use GFX0 for the integrated graphics device,# but there are few renegades that use VID or AGP1.# If your DSDT uses VID or AGP1 instead of GFX0, see the # alternate patch "Rename VID/AGP1 to IGPU"
  3. # sometimes there is already IGPU used for other thingsinto_all all code_regex IGPU, replaceall_matched begin IGFX, end;
  4. # rename GFX0 -> IGPU for better power managementinto_all all code_regex GFX0\. replaceall_matched begin IGPU. end;into_all all code_regex \.GFX0 replaceall_matched begin .IGPU end;into_all all code_regex \sGFX0, replaceall_matched begin IGPU, end;into_all all code_regex \(GFX0 replaceall_matched begin (IGPU end;into_all all label GFX0 set_label begin IGPU end;into_all all label _SB.PCI0.GFX0 set_label begin _SB.PCI0.IGPU end;into_all all label \_SB.PCI0.GFX0 set_label begin \_SB.PCI0.IGPU end;into_all all label _SB.PCI0.GFX0.DD02 set_label begin _SB.PCI0.IGPU.DD02 end;into_all all label \_SB.PCI0.GFX0.DD02 set_label begin \_SB.PCI0.IGPU.DD02 end;into_all all label ^^^GFX0 set_label begin ^^^IGPU end;into_all all label ^^GFX0 set_label begin ^^IGPU end;into_all all label ^GFX0 set_label begin ^IGPU end;

复制代码

3、对于Haswell/Broadwell集成显卡:dsdt需要打入补丁 renaming B0D3 to HDAU (device at 0x00030000)

  1. #Maintained by: RehabMan for: Laptop Patches
  2. #graphics_Rename-B0D3.txt
  3. # for DSDT
  4. into method label _WAK code_regex B0D3 replaceall_matched begin HDAU end;
  5. into definitionblock code_regex B0D3 replaceall_matched begin HDAU end;
  6. # for GFX0 SSDT
  7. # Note: Change your layout ID if you need something different
  8. # inject "hda-gfx"="onboard-1" into IGPU (GFX0 originally)
  9. into method label _DSM parent_adr 0x00020000 remove_entry;
  10. into device name_adr 0x00020000 insert
  11. begin
  12. Method (_DSM, 4, NotSerialized)\n
  13. {\n
  14. If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n
  15. Return (Package()\n
  16. {\n
  17. "hda-gfx", Buffer() { "onboard-1" },\n
  18. })\n
  19. }\n
  20. end;
  21. # inject "hda-gfx"="onboard-1" into HDAU (B0D3 originally)
  22. into method label _DSM parent_adr 0x00030000 remove_entry;
  23. into device name_adr 0x00030000 insert
  24. begin
  25. Method (_DSM, 4, NotSerialized)\n
  26. {\n
  27. If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n
  28. Return (Package()\n
  29. {\n
  30. "layout-id", Buffer() { 12, 0x00, 0x00, 0x00 },\n
  31. "hda-gfx", Buffer() { "onboard-1" },\n
  32. })\n
  33. }\n
  34. end;
  35. into device label B0D3 set_label begin HDAU end;
  36. into method label SBCB code_regex B0D3 replaceall_matched begin HDAU end;

复制代码

4、dsdt中,对于HDAU、IGPU、HDEF三个装备注入相同的"hda-gfx" = "onboard-1" or= “onboard-2”
5、对于Haswell/Broadwell集成显卡,dsdt中HDAU和HDEF注入的layout id要一致。
6、对于Haswell集成显卡还要安装rehabman的FakePCIID.kext和FakePCIID_Intel_HDMI_Audio.kext
7、最重要的一点是要对fb(kext)打入恰当的补丁,即要修改连接类型(00 04 00 00)为(00 08 00 00)匹配物理连接,此处修改fb结合自己的ig-platform-id。苹果的设备大多采用DP连接(00 04 00 00),我们大多数笔记本采用HDMI(00 08 00 00)连接,如果你的是DP连接无需修改fb。
ig-platform-id:集成显卡注入的此属性有以下对应关系
0x01660003: HD4000 1366x768
0x01660004: HD4000 1600x900, 1920x1080
0x01660008: HD4000 1600x900, 1920x1080
0x01660009: HD4000 1600x900, 1920x1080
0x0a260006: HD4400/HD4600/HD5000
根据自己集成显卡注入的ig-platform-id结合以下信息,选择正确的补丁打入clover或者二进制文件

  1. <key>KextsToPatch</key>
  2. <array>
  3. <dict>
  4. <key>Comment</key>
  5. <string>HDMI-audio, port 0105(12), 0x0a2e0008, 0x0a16000c, 0x0a2e000d, 0x0a26000d</string>
  6. <key>Disabled</key>
  7. <true/>
  8. <key>Find</key>
  9. <data>
  10. AQUJAAAEAAAHAQAA
  11. </data>
  12. <key>Name</key>
  13. <string>AppleIntelFramebufferAzul</string>
  14. <key>Replace</key>
  15. <data>
  16. AQUSAAAIAAAHAQAA
  17. </data>
  18. </dict>
  19. <dict>
  20. <key>Comment</key>
  21. <string>HDMI-audio, port 0204, 0x0d220003, 0x0a2e000a, 0x0a26000a</string>
  22. <key>Disabled</key>
  23. <true/>
  24. <key>Find</key>
  25. <data>
  26. AgQKAAAEAACHAAAA
  27. </data>
  28. <key>Name</key>
  29. <string>AppleIntelFramebufferAzul</string>
  30. <key>Replace</key>
  31. <data>
  32. AgQKAAAIAACHAAAA
  33. </data>
  34. </dict>
  35. <dict>
  36. <key>Comment</key>
  37. <string>HDMI-audio, port 0204, 0x0a2e0008, 0x0a16000c, 0x0a2e000d, 0x0a26000d</string>
  38. <key>Disabled</key>
  39. <true/>
  40. <key>Find</key>
  41. <data>
  42. AgQJAAAEAAAHAQAA
  43. </data>
  44. <key>Name</key>
  45. <string>AppleIntelFramebufferAzul</string>
  46. <key>Replace</key>
  47. <data>
  48. AgQJAAAIAAAHAQAA
  49. </data>
  50. </dict>
  51. <dict>
  52. <key>Comment</key>
  53. <string>HDMI-audio, port 0105, 0x0a2e0008, 0x0a16000c, 0x0a2e000d, 0x0a26000d</string>
  54. <key>Disabled</key>
  55. <true/>
  56. <key>Find</key>
  57. <data>
  58. AQUJAAAEAAAHAQAA
  59. </data>
  60. <key>Name</key>
  61. <string>AppleIntelFramebufferAzul</string>
  62. <key>Replace</key>
  63. <data>
  64. AQUJAAAIAAAHAQAA
  65. </data>
  66. </dict>
  67. <dict>
  68. <key>Comment</key>
  69. <string>HDMI-audio, port 0204(12), 0x0d220003, 0x0a2e000a, 0x0a26000a</string>
  70. <key>Disabled</key>
  71. <true/>
  72. <key>Find</key>
  73. <data>
  74. AgQKAAAEAACHAAAA
  75. </data>
  76. <key>Name</key>
  77. <string>AppleIntelFramebufferAzul</string>
  78. <key>Replace</key>
  79. <data>
  80. AgQSAAAIAACHAAAA
  81. </data>
  82. </dict>
  83. <dict>
  84. <key>Comment</key>
  85. <string>HDMI-audio, port 0204, 0x0a260005 0x0a260006</string>
  86. <key>Disabled</key>
  87. <true/>
  88. <key>Find</key>
  89. <data>
  90. AgQJAAAEAACHAAAA
  91. </data>
  92. <key>Name</key>
  93. <string>AppleIntelFramebufferAzul</string>
  94. <key>Replace</key>
  95. <data>
  96. AgQJAAAIAACHAAAA
  97. </data>
  98. </dict>
  99. <dict>
  100. <key>Comment</key>
  101. <string>HDMI-audio, port 0105(12), 0x0a260005 0x0a260006, 0x0d220003, 0x0a2e000a, 0x0a26000a</string>
  102. <key>Disabled</key>
  103. <true/>
  104. <key>Find</key>
  105. <data>
  106. AQUJAAAEAACHAAAA
  107. </data>
  108. <key>Name</key>
  109. <string>AppleIntelFramebufferAzul</string>
  110. <key>Replace</key>
  111. <data>
  112. AQUSAAAIAACHAAAA
  113. </data>
  114. </dict>
  115. <dict>
  116. <key>Comment</key>
  117. <string>HDMI-audio, port 0204(12), 0x0a260005 0x0a260006</string>
  118. <key>Disabled</key>
  119. <true/>
  120. <key>Find</key>
  121. <data>
  122. AgQJAAAEAACHAAAA
  123. </data>
  124. <key>Name</key>
  125. <string>AppleIntelFramebufferAzul</string>
  126. <key>Replace</key>
  127. <data>
  128. AgQSAAAIAACHAAAA
  129. </data>
  130. </dict>
  131. <dict>
  132. <key>Comment</key>
  133. <string>HDMI-audio, port 0105, 0x0a260005 0x0a260006, 0x0d220003, 0x0a2e000a, 0x0a26000a</string>
  134. <key>Disabled</key>
  135. <true/>
  136. <key>Find</key>
  137. <data>
  138. AQUJAAAEAACHAAAA
  139. </data>
  140. <key>Name</key>
  141. <string>AppleIntelFramebufferAzul</string>
  142. <key>Replace</key>
  143. <data>
  144. AQUJAAAIAACHAAAA
  145. </data>
  146. </dict>
  147. <dict>
  148. <key>Comment</key>
  149. <string>HDMI-audio, port 0204(12), 0x0a2e0008, 0x0a16000c, 0x0a2e000d, 0x0a26000d</string>
  150. <key>Disabled</key>
  151. <true/>
  152. <key>Find</key>
  153. <data>
  154. AgQJAAAEAAAHAQAA
  155. </data>
  156. <key>Name</key>
  157. <string>AppleIntelFramebufferAzul</string>
  158. <key>Replace</key>
  159. <data>
  160. AgQSAAAIAAAHAQAA
  161. </data>
  162. </dict>
  163. </array>

复制代码

此文来源于rehabman大神,原帖参考:[guide]Intel IGPU HDMI/DP audio:http://www.tonymacx86.com/threads/guide-intel-igpu-hdmi-dp-audio-sandy-ivy-haswell-broadwell.189495/

macOS如何正确驱动集成显卡HDMI(包括视频和音频)的更多相关文章

  1. Ubuntu 14.04(64位)+GTX970+CUDA8.0+Tensorflow配置 (双显卡NVIDIA+Intel集成显卡) ------本内容是长时间的积累,有时间再详细整理

    (后面内容是本人初次玩GPU时,遇到很多坑的问题总结及尝试解决办法.由于买独立的GPU安装会涉及到设备的兼容问题,这里建议还是购买GPU一体机(比如https://item.jd.com/396477 ...

  2. Ubuntu16安装Nvidia驱动(GTX1060显卡)

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  3. MongoDB学习笔记~关于官方驱动集成IQueryable之后的一些事

    回到目录 关于官方驱动集成IQueryable之后的一些事,有好事也有坏事,好事就是它会将你的linq语句非常友好的翻译成MongoDB语句,而坏事就是有一些linq语句不会被翻译,不会被翻译的代价就 ...

  4. ubuntu开机自动关闭独显,使用集成显卡

    我的本子是联想y470p-ise,因为是有双显卡,而ubuntu在开机后,双显卡默认是同时工作,会产生巨大的发热,导致很不爽.而且在ubuntu下基本我也不用独显,所以有开机关闭独显的需求. ubun ...

  5. 索尼Sony ATI显卡驱动 Win7 Win8 Win8.1 视频黑屏 解决方法

    索尼ATI显卡驱动 Win7  Win8  Win8.1 视频 黑屏 完美解决方法: 下载这个补丁 安装 即可 解决  ! baidu pan:  http://pan.baidu.com/s/1gd ...

  6. 优化 VR 动作类游戏《Space Pirate Trainer*》以便在英特尔® 集成显卡上实现卓越的表现

    Space Pirate Trainer* 是一款面向 HTC Vive*.Oculus Touch* 和 Windows Mixed Reality* 的原创发行游戏.版本 1.0 于 2017 年 ...

  7. BIOS简单设置 解析“集成显卡”内存占用问题

    很多使用集成显卡的用户会发现,在系统信息窗口中,内存容量和实际不一样.比如系统内存显示4GB,可用3.48G之类.这不可用的一部分内存到哪去了? 其实减少的这部分内存是被集成显卡占用当做显存使用了.而 ...

  8. 英特尔的Gen11集成显卡性能再次发力

    这是英特尔首个达到 1 TeraFLOP 算力的图形模块,与第九代酷睿移动版的性能相比,15W Ice Lake-U 在游戏测试场景中,平均帧速率的性能提升了 40%. 与同等的 AMD 产品相比,英 ...

  9. Capstone CS5265规格书|CS5265参数|TYPEC转HDMI音视频转换拓展坞芯片

    一.CS5265总概 Capstone CS5265 USB Type-C到HDMI转换器结合了USB Type-C输入接口和数字高清多媒体接口(HDMI)输出.嵌入式微控制器(MCU)基于工业标准8 ...

随机推荐

  1. servlet获取并存储web.xml中context-param参数

    在web.xml中定义了context-param,一般不会随意改动,所以在监听器中做一次处理,容器启动时读取并存储在Properties中,方便以后取值. SysProperties 类用于存储 c ...

  2. SQL判断经纬度在矩形内

    1,将城市地图拆分等距拆分为矩形 数据结构如图: 2.查看高德JS API (点是否在多边形内)核心代码: a=[114.069564,22.545774]; b=[ [114.067595,22.5 ...

  3. 了解【Docker】从这里开始

    一.环境配置的难题 软件开发最大的难题之一就是环境配置的问题.现在用户环境纷乱复杂,并且由于开源社区的进一步推广和许多开源项目不停地迭代更新,项目可能会有越来越多的依赖以及越来越难管理的依赖版本,如何 ...

  4. Java BIO

    目录 BIO 字节流 OutputStream InputStream 字符流 Reader Writer 转换流 InputStreamReader OutputStreamWriter BIO I ...

  5. JS展示预览PDF。

    刚好遇到需求,需要在手机端--展示一个电子收据,电子收据返回是PDF格式的,所以需要在前端上面去做PDF预览. 在学习过程中,了解到一种很简单,不需要任何插件的方法做PDF预览,但是这方法有局限性. ...

  6. sql单列合并

    有一组这样的数据 1  a  10 2  b  2 4  c  5 1  a  5 在应用中,我们可能需要把出现a的数据合并显示:  1   a   10,5 sqlite上实现:  SELECT   ...

  7. 一个简单的EventEmitter

    用JS写了一个简单的EventEmitter: class EventEmitter { /** * 事件名/回调列表 字典 * @type {Map<string, Array<func ...

  8. IIS发布网站出错解决方案

    1.第一类错误(Web服务器被配置为不列出此目录的内容) 问题所在没有为请求的URL设置默认文档,在IIS“默认文档”添加一个你要访问的默认文档名字,如:Default.aspx. 2.第二类错误(请 ...

  9. Mono for Android 设计器错误:Disconnected from layout renderer

        今早打开vs2012 android 项目的时候出现如下错误提示:     查了半天,终于在官方网站得到答案.(http://forums.xamarin.com/discussion/143 ...

  10. 【Quartus错误】Internal Error: Sub-system: AMERGE

    错误内容:Internal Error: Sub-system: AMERGE, File: /quartus/atm/amerge/amerge_kpt_op.cpp, Line: 220 解决方案 ...