- 积分
- 162
- 最后登录
- 2023-5-9
- 精华
- 0
- 阅读权限
- 20
- 主题
- 23
- UID
- 3590418
- 帖子
- 330
- PB币
- 31
- 威望
- 5
- 贡献
- 0
- 技术
- 3
- 活跃
- 298
- UID
- 3590418
- 帖子
- 330
- PB币
- 31
- 贡献
- 0
- 技术
- 3
- 活跃
- 298
|
发表于 2015-12-19 20:16:59
IP属地浙江
|显示全部楼层
本帖最后由 zjfg0228 于 2016-1-13 15:50 编辑
本来已经放弃了的,但是前天逛论坛的时候看到这个帖子- https://bbs.pcbeta.com/viewthread-1648662-1-5.html
复制代码
,想修复一下独显引导第二阶段载入条在屏幕左下方的问题,但是照了了帖子里做之后,重启发现我的屏幕亮度变暗了,按了一下亮度调节的键发现亮度有变化。当时并没有用GenericBrightness.kext和APCIBacklight.kext,于是我知道原生亮度被开启了。
闲话说多了,说说我怎么做的吧,不是教程,只是经验分享,有不足的地方欢迎指正。
1、我的电脑是6代CPU,核显是HD530,爬了很多帖子发现没戏,于是BIOS关了核显。然后装了webDriver,驱动了独显。这里怎么装的我就不多废话了,论坛里多得是。
2、独显驱动了之后系统信息里显示显卡的显存还是0M,而且用IORegistryExplorer看到显卡下面加载的是AppleDisplay,不是AppleBacklightDisplay,而且显示器也没有内建。loppol在一个帖子里说开启亮度调节的必须条件就是显示器内建+AppleBacklightDisplay被加载。
于是各种爬帖,找到的办法是DSDT注入显卡信息。于是照提取了显卡ROM,用iDSDT注入了显卡信息。显存终于不是0M、终于加载AppleBacklightDisplay了。
这里要说一下,built-in一定要选对
- Method (_DSM, 4, NotSerialized)
- {
- Store (Package ()
- {
- "@0,compatible",
- Buffer (){
- "NVDA,NVMac"
- },
- "@0,device_type",
- Buffer (){
- "display"
- },
- "@0,name",
- Buffer ()
- {
- "NVDA,Display-A"
- },
- "@1,AAPL,boot-display",
- Buffer (One)
- {
- 0x01
- },
- "@1,backlight-control",
- Buffer (0x04)
- {
- 0x01, 0x00, 0x00, 0x00
- },
- "@1,compatible",
- Buffer ()
- {
- "NVDA,NVMac"
- },
- "@1,device_type",
- Buffer ()
- {
- "display"
- },
- "@1,name",
- Buffer ()
- {
- "NVDA,Display-B"
- },
- "@1,built-in",
- Buffer (One)
- {
- 0x01
- },
- "@1,pwm-info",
- Buffer (0x14)
- {
- /* 0000 */ 0x01, 0x14, 0x00, 0x64, 0xA8, 0x61, 0x00, 0x00,
- /* 0008 */ 0x1E, 0x02, 0x00, 0x00, 0x2C, 0x00, 0x00, 0x00,
- /* 0010 */ 0x00, 0x04, 0x00, 0x00
- },
- "@1,use-backlight-blanking",
- Buffer (One)
- {
- 0x01
- },
- "device_type",
- Buffer ()
- {
- "NVDA,Parent"
- },
- "hda-gfx",
- Buffer ()
- {
- "onboard-1"
- }
- }, Local0)
- DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
- Return (Local0)
- }
复制代码 上面是我的显卡信息(可能里面有很多没有的参数,懒得删了)。可以看到很多参数是有两个的,要在IORegistryExplorer看一下自己的AppleDisplay是在哪个NVDA,DIsplay下,比如我的在NVDA,DIsplay-B@1下,所以注入的显卡信息里@1下的必要参数一定要有,比如"@1,pwm-info", "@1,use-backlight-blanking",。
3、至此我的亮度调节还没有解决。有按照《理论上完美解决N卡亮度调节问题》里说的做,没成功。后来仔细读这个帖子时发现自己看漏了一句话——“有些可能也需要插入 NVMT和 EDID才能成功”,于是参照https://bbs.pcbeta.com/viewthread-1473634-1-1.html,注入了EDID。还是亮度调节还是不行,但是显示器有名字了‘。【这一步是不是必须我也不清楚】
4、上班无聊的适合看了开始说的哪个帖子,本来也没想弄,但是帖子里的这一个
- <key>@1,AAPL,boot-display</key>
- <string>0x00000001</string>
复制代码 让我眼前一亮,因为我一直觉得我的先前搞出来的亮度调节在调的是核显的亮度,所以怎么调都没用。下班回家照着帖子里做,就出现现在的惊喜。PS:又把这个帖子给loppol看,他说这个帖子最有含金量的就是上面那段,因为这可能解决3K屛启动黑屏。有兴趣的可以试试。
5、先前也有在这个帖子下面说过,当时的情况是可以调亮度但是两秒之后亮度就变回来了。百思不得其解。看到这个帖子https://bbs.pcbeta.com/viewthread-1439193-1-1.html,忽然想到自己动过AppleBacklight.kext,于是找virjay要了原版,果然解决了,可以正常进行亮度调节,但是最后一档黑屏,重启不能保存亮度。
6、今天早上在床上挣扎时来的灵感:因为先前AppleBacklight.kext-》Info.plist-》IOKitPersonalities-》AppleIntelPanelA-》ApplePanels-》Default的值,就是可以调亮度但是两秒之后亮度就变回来的情况,当时最后一档不是黑屏,而且最高亮度也很暗。于是我把ApplePanels的子项里几乎所有的值都换到Default下面试了试(其实就换了6次),结果和我想的一样,有的值可以让最后一档不黑屛。分享两个我觉得有用的:
- 00110018 0037005F 008A00B3 00EB0124 016701A9 01D40209 025402A2 02F8034D 039603FF 0400
复制代码
这个最高档不够亮,
这个是我现在在用的,最高档就是最亮,但是最低档不够暗。也懒得再试了,各种奇葩结果都有。
7、重启亮度保存:可以看看这个帖子https://bbs.pcbeta.com/viewthread-1182812-1-1.html,建议结合这个帖子https://bbs.pcbeta.com/viewthread-1538926-1-1.html。但是注意要Clover要装RC。
就这么多了,DSDT文件我就不分享了,免得机型不同出什么差错。
还有一点废话等会二楼补上。
|
附件: 你需要登录才可以下载或查看附件。没有帐号?注册
|