womoney7 发表于 2016-11-14 23:52

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 黑屏的问题。



womoney7 发表于 2016-11-15 08:44

自己顶起,莫沉了{:9_348:}{:9_348:}

幕沉 发表于 2016-11-15 14:40

在10.11.6下完美,那就不要升级了,也没有觉得10.12好多少

dlhonghan 发表于 2016-11-15 14:48

comfig1改none

skykingf 发表于 2016-11-15 16:36

NVS4200M 第一次看到成功驱动这货的

womoney7 发表于 2016-11-15 17:11

dlhonghan 发表于 2016-11-15 14:48 https://www.pcbeta.com/static/image/common/back.gif
comfig1改none

试过,还是无效

womoney7 发表于 2016-11-15 17:12

幕沉 发表于 2016-11-15 14:40 https://www.pcbeta.com/static/image/common/back.gif
在10.11.6下完美,那就不要升级了,也没有觉得10.12好多少

我也不想升级到10.12, 就是xcode8 必须10.12 以上。做开发的,没有钱只有折腾黑苹果了

hjfgt 发表于 2016-11-16 11:04

T420S不知能不能用独显,感谢分享。

womoney7 发表于 2016-11-16 23:24

hjfgt 发表于 2016-11-16 11:04 https://www.pcbeta.com/static/image/common/back.gif
T420S不知能不能用独显,感谢分享。

t420s DSDT 中没有添加nvs4200m 的描述,可以添加试试

qzzm 发表于 2016-11-17 00:20

我的T520也一样死活驱动不了NVS4200m 有一个偶尔弄成进系统成功识别 NVS 4200m 1024M 但画面很卡 ~!~无果没能输出高清2K显示器 不爽

womoney7 发表于 2016-11-17 08:43

qzzm 发表于 2016-11-17 00:20 https://www.pcbeta.com/static/image/common/back.gif
我的T520也一样死活驱动不了NVS4200m 有一个偶尔弄成进系统成功识别 NVS 4200m 1024M 但画面很卡 ~!~无果 ...

画面花屏、闪屏,就是没加载到驱动。我怀疑10.12下已经不支持这个 NVS系列的显卡了,我试尽了所有方法都无效。

54806637 发表于 2016-11-19 01:43

是不是那个高分的设置=1就好了

54806637 发表于 2016-11-19 01:44

先收下config了

qq1038765585 发表于 2016-11-19 11:50

试试dsdt注入显卡,我的nvs 3100m可以

womoney7 发表于 2016-11-22 08:43

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)
                  }
                }
            }

womoney7 发表于 2016-11-22 08:59

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)
                  }
                }
            }

womoney7 发表于 2016-11-22 09:07

hjfgt 发表于 2016-11-16 11:04 https://www.pcbeta.com/static/image/common/back.gif
T420S不知能不能用独显,感谢分享。

我修改了下T420s 的DSDT 文件,你可以试试看能用不。

qzzm 发表于 2016-12-25 18:19

womoney7 发表于 2016-11-22 09:07 https://www.pcbeta.com/static/image/common/back.gif
我修改了下T420s 的DSDT 文件,你可以试试看能用不。

事隔多天,不知道楼主解决T520独显驱动10.12没,求教程 或者clover

zhangqq 发表于 2016-12-30 09:42

把下面的代码插在你的显卡的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)
                  }

qqttss25 发表于 2017-2-17 10:03

目前没有解决这个问题
页: [1] 2 3
查看完整版本: T420 NVS4200M 在10.12中的黑屏,在10.11.6下完美