本帖最后由 leonhong 于 2012-1-6 18:12 编辑
一直都说一代无解,但是一直都不太清楚一代的无解是因为什么。
因为Intel偷鸡了,只写了一半儿驱动。
我的本是华硕N43JF i5-480m 集显的id是0046,同id的集显macbookpro 6,1 6,2都有在用啊。
是的。
没打算驱动N卡,那个我明白设计上就不同。那我只想驱动集显的情况呢?
咱倒觉得如能屏蔽集显让N卡工作,那才是正途。可这跟bios的VGAInit写法有关,不是所有本本都办得到。
1---------------假设我能屏蔽独显,那采用MBP6,2的集显驱动还存在哪些问题?
您接着看下去就知道问题可大著了。
/* 事实上由变色龙加入的dsdt.aml是可以取代本本预读的acpi table的 */ 恰好我的本自动切换集显独显时是有指示灯显示的,集显蓝色,独显白色。
您这本本真棒……
1)在无dsdt的状态下,开机读完kext之后在文字模式切换到图形模式时,独显开启,蓝色指示灯变白,图形应该是在vesa模式下输出的
非常好,N卡启动了。 只可惜一般本本的屏幕输出接口是在集显上,偏偏苹果的集显驱动里没接口!!
2)在修改dsdt关闭独显之后,进入lion之后一直都是蓝色指示灯,即完全集显工作
没有意义,因为苹果的集显驱动竟然是把输出数据转存到独显的内存缓存里,结果是如无独显则无集显!!
此时在fakesmc.kext和smbios.plist均设为MBP6,2,安装2011年11月苹果官方给2010 Mid Macbookpro的更新 更新的内容就是intel hd graphics的一系列kext,就是卡在文字界面完全进不去。
那当然,因为一般本本的bios这时还指望着集显工作呢,偏偏集显根本就没驱动支持完全不能工作!!
删除其他集显驱动,只安装AppleIntelHDGraphics.kext得到结果是花屏,外接显示器和远程vnc看到均是花屏 删除其他集显驱动,只安装AppleIntelHDGraphicsFB.kext得到结果是4个屏幕,全是花屏。
那个FB是西贝货,里面根本没有屏幕接口讯息,能用才有鬼。
dsdt 部分device (igpu)下的装置均是DD01,DD02~DD08,不是常规的LCDD,CRTD之类的。不过有意思的是我的dsdt的DD02位置名称是LCDD,且device(DD02)部分的代码是与众不同的,多了3个method,应该是控制内屏输出有关的。
名号可以乱取,但必须依照苹果独家的ACPI规范,苹果才会给糖吃。
2---------------看了MBP6,2的ioreg,集显下面是有显示gMux的载入版本的。显示大致是graphicscontrol之类的驱动加载,忘了具体名字了。 下面是一段新闻里面的话,其实阐述的事实就是苹果的切换技术,其实也是驱动层面的,不是硬件层面的。 而且白苹果可以通过gfxcardstatus这个软件来控制完全集显或者完全独显。
那个kext只是切换Surface在内存里的运算位置指定给Intel HD,并且把独显的GPU降频而已,并不会改变屏幕接口的实际输出位置,独显还是得负责输出。
根据苹果的资料显示,新MacBook Pro的显卡切换技术也是基于驱动程序判断用户的应用调用图形处理能力的强度来决定是否启用独立显卡,与Optimus技术一样无需用户来进行干预即可完成独立显卡与集成显卡工作模式的切换。不过苹果宣称自己的显卡切换技术是完全不允许用户对驱动程序进行干预,而只是基于侦测耗费图形性能的API运行情况来决定是否切换至独立显卡模式。
那么原则上,如果只驱动集显还是有理论上的可能的,并非所说的笔记本显卡排线等硬件问题了。
刚好相反,苹果只有独显的输出接口会连接到内屏可以单独使用,集显的输出接口根本是假的,所以绝对不可能单用集显。
3---------------那么问题来了:我对dsdt和硬件驱动方面所知非常有限,所以请教各位,下一步该怎么走?
您客气了。
1)修改驱动关于切换部分的内容,改为只使用集显,可行吗?(想知道gfxcardstatus那位老兄怎么搞定的。。)
倒过来才可行。
2)只是在dsdt上加入gmux装置,可不可能伪装到让系统加载gMux部分的驱动?
不能,或者说没有意义。gmux是个实体芯片,它只能负责控制独显的外频。真正的切换还是由系统跟驱动在内存里完成。就算真能写出个gmux的伪驱,那也只是能指定由谁负责Surface加速,内屏还是不亮……
求各位大大给点点指导,至少有点摸索下去的思路。或者指出我之前所说的错误,让我直接放弃掉。
咱很感动,可大大您还是直接放弃一代Intel HD吧 简单地说,苹果只是把DD01放在IGPU里假装它有遵守ACPI规范而已,真正控制内屏的codec线路还是在独显上,而这点跟一般的本本却刚好相反,所以一般本本用苹果驱动会黑屏是理所当然的!!咱猜这招是为了不让原来独显的驱动有太大变化才搞出来的烂方法。
其实到了HD3000年代,苹果的驱动又忽然地规矩起来了,应该还是为了air系列省电的考量吧……
|