T420 NVS4200M 在10.12中的黑屏,在10.11.6下完美
本帖最后由 womoney7 于 2016-11-14 23:52 编辑本T420 显卡是NVS4200M,1600x900的分辨率。在10.11.6中使用NVS 4200M 显卡完美,可以调节亮度,待机恢复都没有问题。如下图:
安装了Mac OS 10.12后 NVS4200M始终无法正常显示,读完进度条后就黑屏。网上的所有方式都试过了,死活就黑屏。在禁用N卡(nv_disable=1)启动参数下可以进去,没有驱动闪屏。
改SMBIOS,几乎所有的配置都试过。MacBookPro6,1到MacBookPro10,1(GFX1), iMac12,1-iMac14,2(GFX0)全用过,也过老外给出的解决办法,都不起任何作用。
遇到NVS 显卡在10.12 中黑屏的,求赐教、解决。
最后附上完整的Clover ,10.11中集显和独显正常,10.12 中集显正常,独显黑屏。
其中config.plist 是NVS 4200M 显卡配置。config.hd3000.plist 是集成显卡使用的配置文件(bios需中选择 Nvidia Options),测试VGA 接口扩展屏可用。
请大神帮忙解决10.12 黑屏的问题。
自己顶起,莫沉了{:9_348:}{:9_348:} 在10.11.6下完美,那就不要升级了,也没有觉得10.12好多少 comfig1改none NVS4200M 第一次看到成功驱动这货的 dlhonghan 发表于 2016-11-15 14:48 https://www.pcbeta.com/static/image/common/back.gif
comfig1改none
试过,还是无效 幕沉 发表于 2016-11-15 14:40 https://www.pcbeta.com/static/image/common/back.gif
在10.11.6下完美,那就不要升级了,也没有觉得10.12好多少
我也不想升级到10.12, 就是xcode8 必须10.12 以上。做开发的,没有钱只有折腾黑苹果了 T420S不知能不能用独显,感谢分享。 hjfgt 发表于 2016-11-16 11:04 https://www.pcbeta.com/static/image/common/back.gif
T420S不知能不能用独显,感谢分享。
t420s DSDT 中没有添加nvs4200m 的描述,可以添加试试 我的T520也一样死活驱动不了NVS4200m 有一个偶尔弄成进系统成功识别 NVS 4200m 1024M 但画面很卡 ~!~无果没能输出高清2K显示器 不爽 qzzm 发表于 2016-11-17 00:20 https://www.pcbeta.com/static/image/common/back.gif
我的T520也一样死活驱动不了NVS4200m 有一个偶尔弄成进系统成功识别 NVS 4200m 1024M 但画面很卡 ~!~无果 ...
画面花屏、闪屏,就是没加载到驱动。我怀疑10.12下已经不支持这个 NVS系列的显卡了,我试尽了所有方法都无效。 是不是那个高分的设置=1就好了 先收下config了 试试dsdt注入显卡,我的nvs 3100m可以 qq1038765585 发表于 2016-11-19 11:50 https://www.pcbeta.com/static/image/common/back.gif
试试dsdt注入显卡,我的nvs 3100m可以
请问下你是怎么加的? 我添加NVIDIA 显卡 是在DSDT Device (PCI0) 节点下增加了 PEG1
Device (PEG1)
{
Name (_ADR, 0x00010000)
Method (_PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x0B,
0x04
})
}
Device (GFX1)
{
Name (_ADR, Zero)
Name (_SUN, One)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x26)
{
"AAPL,HasPanel",
Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
},
"AAPL,Haslid",
Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
},
"AAPL,backlight-control",
Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
},
"@0,backlight-control",
Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
},
"@0,AAPL,boot-display",
Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
},
"@0,built-in",
Buffer (One)
{
0x01
},
"@0,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},
"@0,device_type",
Buffer (0x08)
{
"display"
},
"@0,name",
Buffer (0x0F)
{
"NVDA,Display-A"
},
"@0,NVMT",
Buffer (0x60)
{
/* 0000 */ 0x0B, 0x03, 0xFF, 0x20, 0x06, 0x10, 0x90, 0x9C,
/* 0008 */ 0x00, 0x05, 0x20, 0x03, 0x8F, 0x05, 0x30, 0x05,
/* 0010 */ 0x50, 0x05, 0x00, 0x00, 0x4E, 0x03, 0x23, 0x03,
/* 0018 */ 0x29, 0x03, 0x00, 0x00, 0x20, 0x43, 0x52, 0x04,
/* 0020 */ 0x00, 0x00, 0x01, 0x01, 0xE0, 0x00, 0x00, 0x00,
/* 0028 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0038 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0040 */ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
/* 0048 */ 0x00, 0x00, 0x00, 0x00, 0x40, 0xFF, 0x10, 0x05,
/* 0050 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0058 */ 0x00, 0x08, 0x00, 0x00, 0x30, 0x01, 0x09, 0x09
},
"@0,pwm-info",
Buffer (0x14)
{
/* 0000 */ 0x01, 0x14, 0x00, 0x64, 0xA8, 0x61, 0x00, 0x00,
/* 0008 */ 0x08, 0x52, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x04, 0x00, 0x00
},
"@1,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},
"@1,device_type",
Buffer (0x08)
{
"display"
},
"@1,name",
Buffer (0x0F)
{
"NVDA,Display-B"
},
"NVCAP",
Buffer (0x14)
{
/* 0000 */ 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
/* 0008 */ 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A,
/* 0010 */ 0x00, 0x00, 0x00, 0x00
},
"VRAM,totalsize",
Buffer (0x04)
{
0x00, 0x00, 0x00, 0x40
},
"device_type",
Buffer (0x0C)
{
"NVDA,Parent"
},
"model",
Buffer (0x18)
{
"NVIDIA Quadro NVS 4200M"
},
"rom-revision",
Buffer (0x26)
{
"NVIDIA Quadro NVS 4200M OpenGL Engine"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}
}
qq1038765585 发表于 2016-11-19 11:50 https://www.pcbeta.com/static/image/common/back.gif
试试dsdt注入显卡,我的nvs 3100m可以
你是怎么在DSDT中添加的NVIDIA 显卡描述? 我是在PCI0 节点中添加了Device (PEG0),下面是就是具体代码 Device (PEG0)
{
Name (_ADR, 0x00010000)
Method (_PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x0B,
0x04
})
}
Device (GFX1)
{
Name (_ADR, Zero)
Name (_SUN, One)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x26)
{
"AAPL,HasPanel",
Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
},
"AAPL,Haslid",
Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
},
"AAPL,backlight-control",
Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
},
"@0,backlight-control",
Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
},
"@0,AAPL,boot-display",
Buffer (0x04)
{
0x01, 0x00, 0x00, 0x00
},
"@0,built-in",
Buffer (One)
{
0x01
},
"@0,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},
"@0,device_type",
Buffer (0x08)
{
"display"
},
"@0,name",
Buffer (0x0F)
{
"NVDA,Display-A"
},
"@0,NVMT",
Buffer (0x60)
{
/* 0000 */ 0x0B, 0x03, 0xFF, 0x20, 0x06, 0x10, 0x90, 0x9C,
/* 0008 */ 0x00, 0x05, 0x20, 0x03, 0x8F, 0x05, 0x30, 0x05,
/* 0010 */ 0x50, 0x05, 0x00, 0x00, 0x4E, 0x03, 0x23, 0x03,
/* 0018 */ 0x29, 0x03, 0x00, 0x00, 0x20, 0x43, 0x52, 0x04,
/* 0020 */ 0x00, 0x00, 0x01, 0x01, 0xE0, 0x00, 0x00, 0x00,
/* 0028 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0038 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0040 */ 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
/* 0048 */ 0x00, 0x00, 0x00, 0x00, 0x40, 0xFF, 0x10, 0x05,
/* 0050 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0058 */ 0x00, 0x08, 0x00, 0x00, 0x30, 0x01, 0x09, 0x09
},
"@0,pwm-info",
Buffer (0x14)
{
/* 0000 */ 0x01, 0x14, 0x00, 0x64, 0xA8, 0x61, 0x00, 0x00,
/* 0008 */ 0x08, 0x52, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x04, 0x00, 0x00
},
"@1,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},
"@1,device_type",
Buffer (0x08)
{
"display"
},
"@1,name",
Buffer (0x0F)
{
"NVDA,Display-B"
},
"NVCAP",
Buffer (0x14)
{
/* 0000 */ 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
/* 0008 */ 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A,
/* 0010 */ 0x00, 0x00, 0x00, 0x00
},
"VRAM,totalsize",
Buffer (0x04)
{
0x00, 0x00, 0x00, 0x40
},
"device_type",
Buffer (0x0C)
{
"NVDA,Parent"
},
"model",
Buffer (0x18)
{
"NVIDIA Quadro NVS 4200M"
},
"rom-revision",
Buffer (0x26)
{
"NVIDIA Quadro NVS 4200M OpenGL Engine"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}
}
hjfgt 发表于 2016-11-16 11:04 https://www.pcbeta.com/static/image/common/back.gif
T420S不知能不能用独显,感谢分享。
我修改了下T420s 的DSDT 文件,你可以试试看能用不。 womoney7 发表于 2016-11-22 09:07 https://www.pcbeta.com/static/image/common/back.gif
我修改了下T420s 的DSDT 文件,你可以试试看能用不。
事隔多天,不知道楼主解决T520独显驱动10.12没,求教程 或者clover 把下面的代码插在你的显卡的Method (_DSM, 4, NotSerialized)方法之前。试试吧。
可能只支持内屏,外屏可能还要加其它代码。
代码的关键是定义_DOD方法和LCD设备。其它是多余的,我懒得删除了。
可以参考ACPI的specs pdf中_DOD的定义,获得背景知识。
OperationRegion (PCFG, PCI_Config, Zero, 0x50)
Field (PCFG, DWordAcc, NoLock, Preserve)
{
DVID, 16,
Offset (0x2C),
SVID, 32,
Offset (0x4C),
SMID, 32
}
Name (DOSA, Zero)
Method (_DOS, 1, NotSerialized)// _DOS: Disable Output Switching
{
Store (Arg0, DOSA)
}
Method (_DOD, 0, NotSerialized)// _DOD: Display Output Devices
{
Return (Package (0x01)
{
0x0110
})
}
Device (LCD)
{
Name (_ADR, 0x0110)// _ADR: Address
}
Method (_RMV, 0, NotSerialized)// _RMV: Removal Status
{
Return (Zero)
} 目前没有解决这个问题