Jump to content

Nvidia Web Driver updates for macOS Sierra (UPDATE Sept 27, 2019)


fantomas
 Share

1,025 posts in this topic

Recommended Posts

Just installed 10.12.4 Beta (16E144f) and changed NVDAStartupWeb.kext:

<key>NVDARequiredOS</key>
<string>16E144f</string>

It works somehow. But not as it should. There is no hardware acceleration for now. Any Idea what to try to get it work properly?

Link to comment
Share on other sites

Just installed 10.12.4 Beta (16E144f) and changed NVDAStartupWeb.kext:

<key>NVDARequiredOS</key>
<string>16E144f</string>

It works somehow. But not as it should. There is no hardware acceleration for now. Any Idea what to try to get it work properly?

No ideas. Waiting xxx.xx.xx.xx.xxb01 (beta) driver special for 10.12.4.

Link to comment
Share on other sites

News for CHAMELEON users:

There is an new boot testversion (copy it into / ) to use Nvidia Webdrivers with El Capitan & Sierrra.

That replaces the need of FileNVRAM module / NVRAM.kext - which slow down the boot process and also spam the systemlog with errors.

Thread bootloader / chameleon.

  • Like 1
Link to comment
Share on other sites

I have a Clevo 980m 8GB card installed in a Dell m6700(Optimus disabled) with 10.12.3(16D32).  The 367.15.10.35f01 driver hangs or reboots the machine at about the time the desktop should appear.  Like, after showing the verbose boot text the screen goes blank and the machine hangs or reboots.   I assume I just need to check the Web Driver option in Clover?  Nvidia injection, nvda_drv=1 and fake nvram aren't needed right?  

 

Anyone got a Maxwell mobile GPU working? 

 

The machine works well in Windows 7 and Ubuntu 16.04 with 378 and 375 version drivers respectively. 

 

Also not liking Sierra's new logging/console setup.  Seems being able to see the boot log after a boot fails isn't a priority at Apple.

Link to comment
Share on other sites

Just installed 10.12.4 Beta (16E144f) and changed NVDAStartupWeb.kext:

<key>NVDARequiredOS</key>
<string>16E144f</string>

It works somehow. But not as it should. There is no hardware acceleration for now. Any Idea what to try to get it work properly?

 

Anyone has an fix?

Link to comment
Share on other sites

I have a Clevo 980m 8GB card installed in a Dell m6700(Optimus disabled) with 10.12.3(16D32).  The 367.15.10.35f01 driver hangs or reboots the machine at about the time the desktop should appear.  Like, after showing the verbose boot text the screen goes blank and the machine hangs or reboots.   I assume I just need to check the Web Driver option in Clover?  Nvidia injection, nvda_drv=1 and fake nvram aren't needed right?  

 

Anyone got a Maxwell mobile GPU working? 

 

The machine works well in Windows 7 and Ubuntu 16.04 with 378 and 375 version drivers respectively. 

 

Also not liking Sierra's new logging/console setup.  Seems being able to see the boot log after a boot fails isn't a priority at Apple.

I also have a maxwell graphic card in my laptop (980m GTX) but no optimus in my case and graphics wise it works perfectly fine (Intel HD530 for the laptop panel and 980m GTX for HDMI out).  The only issues with this configuration is:

-When i inject both card i get flickers at the left corner of the screen.

-HDMI audio doesn't seem to be supported for this card with the Nvidia drivers.

 

When you say Optimus disabled what do you mean ?

Link to comment
Share on other sites

I also have a maxwell graphic card in my laptop (980m GTX) but no optimus in my case and graphics wise it works perfectly fine (Intel HD530 for the laptop panel and 980m GTX for HDMI out).  The only issues with this configuration is:

-When i inject both card i get flickers at the left corner of the screen.

-HDMI audio doesn't seem to be supported for this card with the Nvidia drivers.

 

When you say Optimus disabled what do you mean ?

So the 980m is supported then.  Wonder why mine crashes.  Are you on 10.12.3?  Would it be possible to attach or send me your Clover config file?  

 

The Dell m6700 has hardware video signal multiplexers. There is an option in the BIOS to disable Optimus.  It seems this option disables the IGP and switches the multiplexers to use the outputs from the MXM slot to drive the internal LCD and one of the external ports.  Maybe I should try OSX with Optimus enabled. Should behave the same as your setup then.   Maybe if it's the LVDS internal LCD that is a problem for the driver...

 

Thanks for your reply. Maybe I'll get this working after all.

Link to comment
Share on other sites

So the 980m is supported then.  Wonder why mine crashes.  Are you on 10.12.3?  Would it be possible to attach or send me your Clover config file?  

 

The Dell m6700 has hardware video signal multiplexers. There is an option in the BIOS to disable Optimus.  It seems this option disables the IGP and switches the multiplexers to use the outputs from the MXM slot to drive the internal LCD and one of the external ports.  Maybe I should try OSX with Optimus enabled. Should behave the same as your setup then.   Maybe if it's the LVDS internal LCD that is a problem for the driver...

 

Thanks for your reply. Maybe I'll get this working after all.

I'm afraid that my config.plist has nothing to do with the Nvidia graphics.  Nothing is injected or patched other than the Intel HD530 graphic files.  In regards to the Nvidia, everything is done through ACPI patching.  An yes, i am on 10.12.3.

Are you using ACPI tables for your setup or relying solely on Clover to patch them for you ?

You may try with optimus enabled, but in this case i don't think you will be able to use your Nvidia graphics, but that's worth a try.

Also can you attach a picture in verbose mode before it hangs/reboots ?

Link to comment
Share on other sites

I'm afraid that my config.plist has nothing to do with the Nvidia graphics.  Nothing is injected or patched other than the Intel HD530 graphic files.  In regards to the Nvidia, everything is done through ACPI patching.  An yes, i am on 10.12.3.

Are you using ACPI tables for your setup or relying solely on Clover to patch them for you ?

You may try with optimus enabled, but in this case i don't think you will be able to use your Nvidia graphics, but that's worth a try.

Also can you attach a picture in verbose mode before it hangs/reboots ?

Okay, I'd already disabled all the Nvidia options in Clover with exception of enabling the Web Driver so it's probably not the config then.  I have a patched DSDT, but I've be trying to reduce that and rely more on Clover to do it for me.  What did you change with ACPI patching?

 

I tried recording the verbose log messages using my smartphone, but it boots too quickly to be readable.  I can see it's using the web driver in the verbose output, and that it uses the GM100 kext, but there's not much more than that.  Since Apple changed the way logging works I haven't been able to find if the verbose boot logging is written to a log file somewhere.  If I can find a better way to record the verbose boot I'll attach it.

 

Thanks for the help.

Link to comment
Share on other sites

Okay, I'd already disabled all the Nvidia options in Clover with exception of enabling the Web Driver so it's probably not the config then.  I have a patched DSDT, but I've be trying to reduce that and rely more on Clover to do it for me.  What did you change with ACPI patching?

 

I tried recording the verbose log messages using my smartphone, but it boots too quickly to be readable.  I can see it's using the web driver in the verbose output, and that it uses the GM100 kext, but there's not much more than that.  Since Apple changed the way logging works I haven't been able to find if the verbose boot logging is written to a log file somewhere.  If I can find a better way to record the verbose boot I'll attach it.

 

Thanks for the help.

Insert this under your Nvidia graphics in the DSDT (or maybe an SSDT in my case) not sure if it is PEGP, GFX0 or other in your ACPI tables:

Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
            {
                If (LEqual (Arg2, Zero))
                {
                    Return (Buffer (One)
                    {
                         0x03                                           
                    })
                }

                Return (Package (0x0E)
                {
                    "@0,connector-type", 
                    Buffer (0x04)
                    {
                         0x00, 0x08, 0x00, 0x00                         
                    }, 

                    "@1,connector-type", 
                    Buffer (0x04)
                    {
                         0x00, 0x08, 0x00, 0x00                         
                    }, 

                    "@2,connector-type", 
                    Buffer (0x04)
                    {
                         0x00, 0x08, 0x00, 0x00                         
                    }, 

                    "@3,connector-type", 
                    Buffer (0x04)
                    {
                         0x00, 0x08, 0x00, 0x00                         
                    }, 

                    "@4,connector-type", 
                    Buffer (0x04)
                    {
                         0x00, 0x08, 0x00, 0x00                         
                    }, 

                    "@5,connector-type", 
                    Buffer (0x04)
                    {
                         0x00, 0x08, 0x00, 0x00                         
                    }, 

                    "hda-gfx", 
                    Buffer (0x0A)
                    {
                        "onboard-2"
                    }
                })
            }
  • Like 1
Link to comment
Share on other sites

 

Insert this under your Nvidia graphics in the DSDT (or maybe an SSDT in my case) not sure if it is PEGP, GFX0 or other in your ACPI tables:

Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
            {
                If (LEqual (Arg2, Zero))
                {
                    Return (Buffer (One)
                    {
                         0x03                                           
                    })
                }

                Return (Package (0x0E)
                {
                    "@0,connector-type", 
                    Buffer (0x04)
                    {
                         0x00, 0x08, 0x00, 0x00                         
                    }, 

                    "@1,connector-type", 
                    Buffer (0x04)
                    {
                         0x00, 0x08, 0x00, 0x00                         
                    }, 

                    "@2,connector-type", 
                    Buffer (0x04)
                    {
                         0x00, 0x08, 0x00, 0x00                         
                    }, 

                    "@3,connector-type", 
                    Buffer (0x04)
                    {
                         0x00, 0x08, 0x00, 0x00                         
                    }, 

                    "@4,connector-type", 
                    Buffer (0x04)
                    {
                         0x00, 0x08, 0x00, 0x00                         
                    }, 

                    "@5,connector-type", 
                    Buffer (0x04)
                    {
                         0x00, 0x08, 0x00, 0x00                         
                    }, 

                    "hda-gfx", 
                    Buffer (0x0A)
                    {
                        "onboard-2"
                    }
                })
            }

 

Thanks.  I tried adding the DSDT mod under the GFX0 device.  The connector definitions show up in IORegisteryExplorer so the patch is there, but unfortunately it doesn't fix it.

 

I also tried with Opimus switched on and the web driver enable.  While it still reboots on startup, the IGP connected display shows a panic in the NVDAResmanWeb kext, which I managed to get a photo of.  Doesn't give much to go on.

 

Do you have nvram working?  If so, natively or with nvram clover extension?

post-273141-0-49786100-1486896050_thumb.jpg

Link to comment
Share on other sites

 

Insert this under your Nvidia graphics in the DSDT (or maybe an SSDT in my case) not sure if it is PEGP, GFX0 or other in your ACPI tables:

...

 

So a just enabling Optimus in the BIOS and changing the SMBIOS from MacPro5,1 to MacBook8,3 gets the 980m working on the display port.  Having the connectors defined in the DSDT doesn't seem to make a difference.   Like I added them, and it didn't work. Then I enabled Optimus and changed the SMBIOS and the 980m started working on the DP.  I've now reverted to my old DSDT without the connectors and the 980m still works on the DP.

 

Still can't get OSX to start up with Optimus disabled.  If I can work out which ports the LVDS panel and HDMI are connected to I'll try patching the DSDT with the right connector types for the m6700 and see what happens.

 

Thanks for your help. I would have given up without your suggestions.

Link to comment
Share on other sites

 Share

×
×
  • Create New...