issue disabling Nvidia GPU

tristan

New member
AMD OS X Member
Joined
May 23, 2023
Messages
29
hi, I have a issue when I disable Nvidia GPU on ventura... Now I have a dual boot (windows and hackingosh Ventura 13.4) and two gpu: GTX 1070Ti 8GB for windows and Sapphire AMD Rx570 8GB for Ventura.

I try to disable via config.plist ( pci gpu-disabled ) and via SSDT (like opencore manual), but don´t work. The fist time works fine, but the second reboot not, and loop restart all the time.

Only works again if I reset de nvram, but only one time until reboot.

thanks for your help!
 

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,345
Post a copy of your OC EFI so we can see what you are using. Redact the serial number from your config.plist before posting a copy here.
 

tristan

New member
AMD OS X Member
Joined
May 23, 2023
Messages
29
This is my EFI folder, with the serial number hide...
In ACPI folder is the file .aml before compile to .dsl.

The address of pci to disable in windows is:
ACPI(SB)#ACPI(PCI0)#ACPI(GPP8)#PCI(0000)

The first slot is the Nvidia (GPP8), and the AMD is the second slot (GPP9)

I don´t know what is wrong.
Thank you very much!
 

Attachments

  • EFI.rar
    13.1 MB · Views: 1

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,345
This is a screenshot of your EFI folder in Finder.

Screenshot 2023-06-06 at 19.31.31.png Current EFI folder contents.

The two items highlighted in the RED rectangles should along with the Drivers and Tools folder contents all have the same 'Date Modified' indicating they all come from the same release of OpenCore. The BOOTx64.efi in your OC setup is from the January 2023 release (0.8.8) while the other files are from the May 2023 release (0.9.2). This on its own can cause issues when booting the system.

You have two Applications (highlighted in CYAN rectangles) in the Tools folder, this is nonsense, as you can't use them from this location. You should remove them and if necessary add them to the Applications folder for which ever release of macOS you are running.

The Screen image below shows a revised EFI folder, this would be a better option for your system. Note the applications have been removed and the BOOTx64.efi file is from the same release as the other files.
Screenshot 2023-06-06 at 19.41.00.png Revised EFI folder contents.

I need more information regarding the Nvidia dGPU before I can help with the SSDT.

The ACPI(SB)#ACPI(PCI0)#ACPI(GPP8)#PCI(0000) address for the Nvidia card indicates that you are missing a 'Bridge' from the devices address, i.e. the (0000) section should be a four character code that matches an address in your setup.
 

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,345
Your config.plist contains a couple of errors.

First is you seem to be using the iMac19,1 SMBIOS, this is no good for an AMD system. You need to be using the SMBIOS for an iMacPro1,1 or MacPro7,1 when running Ventura on an AMD desktop system. As your AMD lacks an integrated GPU and relies on the discrete AMD RX 570 dGPU for all graphics processing.

Your ASRock motherboard doesn't contain the Intel i225-V ethernet controller, so you don't need the e1000=0 (or older dk.e1000=0) boot argument in your config.
 

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,345
Your UTBMap.kext/Contents/Info.plist doesn't look correct for the ports available on your motherboard.

Screenshot 2023-06-06 at 20.09.25.png View of your UTBMap.kext/Contents/Info.plist in ProperTree.

The kext is looking to activate 12 USB ports
  • 3 x Type-C (9)
  • 3 x USB2 physical (0)
  • 2 x Internal USB2 (255)
  • 4 x USB3 (3)
This doesn't correspond with the ports available on your motherboard.
Rear I/O plate:
  • 1 x USB 3.1 Gen1 Type-A Port (Support 1 x USB 3.1 Gen1 port + 1 x USB 2 virtual port)
  • 1 x USB 3.1 Gen1 Type-C Port
  • 6 x USB 3.1 Gen1 Ports (Support 6 x USB 3.1 Gen1 ports + 6 x USB 2 virtual ports)

Internal Headers:
  • 2 x USB 2.0 Headers (Support 4 x USB 2 Internal ports)
  • 2 x USB 3.1 Gen1 Headers (Support 4 x USB 3.1 Gen1 ports + 4 x USB 2 virtual ports)

The above indicates that your motherboard supports a total of 26 or 28 USB ports, depending on how the Type-C port is configured.

  1. You have the Type-C device activating 3 x ports using the connector type (9), which is used for a Type-c + switch port. If your Type-C connector was with switch, then it would provide a maximum of 2 x ports.
    1. The fact your motherboard only has one physical Type-C connector on the rear I/O plate and you are activating 3 x ports, tells me the port is set incorrectly.
    2. It should, if more than one port is activated for any given device, when it is inserted, removed, flipped 180° and reinserted, be set with the connector type - Type-C without switch (10). This would provide a maximum of 4 x ports (2 x Type-C and 2 x USB2 virtual ports).
  2. Your motherboard doesn't have any USB 2.0 physical ports, so none of the ports in your UTBMap.kext should be set with the connector type USB2 (0), ever!
  3. You have a maximum of 4 x USB Internal ports, which should be set as Internal (255) if they are all used.
  4. You have 7 x Physical USB 3.1 Type-A ports, these will need to be set with connector type USB3 (3), including the 7 x USB2 virtual ports that are companions to the USB3 physical ports.
  5. Your motherboard has 2 x USB3 header ports.
    1. Each USB 3 header port will provide 2 x USB3 and 2 x USB2 virtual ports, all 4 x ports from each header in use will need to be set with connector type USB3 (3).
    2. Yes, that includes the virtual USB2 companion ports. As these need to match the physical device type, i.e USB3.
As your motherboard has 2 x USB Controllers, PTXH and XHC0 you can activate a maximum of 30 ports, across the two controllers.
Neither of your two USB Controllers are likely to exceed the 15 port limit individually. So you should be able to activate all of the USB ports on your motherboard. Even more so if you are not using all four motherboard headers.
The 15 port USB limit imposed by Apple is per USB controller, not an aggregate across multiple USB Controllers.

You need to go back to Windows and create a new UTBMap.kext for your system. As the USB port discovery you previously undertook is just wrong for your system.

This is a common error, and also a common cause for macOS not behaving as expected. The sooner you fix this issue the better.
 

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,345
Here is a copy of the revised EFI folder I mentioned above. Forgot to add it to the post above.

Just remember you need to change the SMBIOS before you use it. It also contains your incorrect UTBMap.kext and the SSDT-Spoof table for your Nvidia card, so don't expect it to work perfectly.

I would recommend you temporarily remove the Nvidia dGPU and SSDT-Spoof, while sorting out macOS booting and running correctly. It will make troubleshooting any issues easier.

If you provide a copy of the system DSDT.aml I might be able to work out what additional ACPI bridge device name is required for your SSDT Spoof to work with the Nvidia dGPU.
 

Attachments

  • EFI.zip
    9.5 MB · Views: 2

tristan

New member
AMD OS X Member
Joined
May 23, 2023
Messages
29
Here is a copy of the revised EFI folder I mentioned above. Forgot to add it to the post above.

Just remember you need to change the SMBIOS before you use it. It also contains your incorrect UTBMap.kext and the SSDT-Spoof table for your Nvidia card, so don't expect it to work perfectly.

I would recommend you temporarily remove the Nvidia dGPU and SSDT-Spoof, while sorting out macOS booting and running correctly. It will make troubleshooting any issues easier.

If you provide a copy of the system DSDT.aml I might be able to work out what additional ACPI bridge device name is required for your SSDT Spoof to work with the Nvidia dGPU.

Thank you very much for your time and help !!!

I am going to fix all.
 

tristan

New member
AMD OS X Member
Joined
May 23, 2023
Messages
29
I modify the config.plist with your comments (Thanks again..), update the files with opencore 0.92, and update the kext.

Clean Install , and SMBIOS to MacPro7,1..... and works fine!!
this night, I will try to disable de GPU Nvidia again (SSDT metod)


Create again the usb map, but I don´t know if it is right. There are 2 x 2.0 usb internal connector on motherboard with 2 usb each. One of the usb connector is disabled and the other has a cable like this:


usb cable to mb


I set this internal to USB2 physical (0).... Is it correct?


attach image with my usbmap plist and my modify EFI folder.

thank you!

1686204117136.png
1686204156187.png
1686204182774.png
 

Attachments

  • 1686203247210.png
    1686203247210.png
    95.6 KB · Views: 5
  • 1686203288230.png
    1686203288230.png
    68.3 KB · Views: 2
  • 1686203323761.png
    1686203323761.png
    65.6 KB · Views: 5
  • EFI (08-june).rar
    8.7 MB · Views: 1
Last edited:

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,345
I set this internal to USB2 physical (0).... Is it correct?
No, the internal header port should be set as (255) not (0).
 

tristan

New member
AMD OS X Member
Joined
May 23, 2023
Messages
29
ok, Set to 255 all internals. (y)

Now, I try to create the SSDT to disable de GPU Nvida , and insert into the pconfig.list to load, following this manual:


And don´t work... stucks on this screen several seconds and loop reboot


IMG_8733.jpg

First Pcie = AMD Rx570
Second Pcie = Nvidia GPU

this is the pci address in windows of the 2 gpus.

IMG_8735.jpgIMG_8734.jpg

I attach the file to disable the 2nd Pcie after compile.
what is better? Place the nvidia GPU in the first Pcie slot or in the second Pcie?

Thank you very much in advance....!!
 

Attachments

  • SSDT-GPU-DISABLE-PCI2.rar
    487 bytes · Views: 4
  • IMG_8733.jpg
    IMG_8733.jpg
    1.2 MB · Views: 8

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,345
Post a copy of your IOREG so we can see what macOS shows when both dGPUs are present in the system.
 

tristan

New member
AMD OS X Member
Joined
May 23, 2023
Messages
29
I am sorry, but I can´t boot macOs with nvidia and amd dGPUs.

I don´t know how to...
 
Last edited:

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,345
Can you post a copy of your system DSDT.aml.

As we might be able to generate the missing PCI Bridge using Corpnewt's SSDTTime with your system DSDT.aml, i.e. (SB.PCI0.GPP9.0000) where the missing bridge is denoted by '0000' in the ACPI address in the screenshot you posted above.
 

tristan

New member
AMD OS X Member
Joined
May 23, 2023
Messages
29
Here is the file.
Thanks
 

Attachments

  • DSDT.aml.zip
    10.3 KB · Views: 8

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,345
So based on the information in the Screenshots above (post #11) and your DSDT.aml I have generated a couple of SSDT's for your system.

The first is SSDT-Bridge.aml, which was generated in Corpnewt's SSDTTime, using the your DSDT.aml and the PCIROOT(0)#PCI(0302)#PCI(0000) address from Windows.
This generated an SSDT which identified the hidden bridge/ACPI address segment (0000) as PXSX, as shown below.

Screenshot 2023-06-13 at 15.51.54.png

I then obtained a copy of the Disable GPU SSDT from Dortania and using the information above created what I hope will be a working SSDT to disable your Nvidia GPU.

Screenshot 2023-06-13 at 15.54.04.png New SSDT to disable Nvidia GPU

These are both attached below and should be added to your /EFI/OC/ACPI folder with a companion entry for each SSDT added to your config.plist.

Try these two SSDT's and let me know what happens.
 

Attachments

  • SSDT-Disable-Nv-GPU.aml.zip
    921 bytes · Views: 5
  • SSDT-Bridge.aml.zip
    621 bytes · Views: 3

Edhawk

Guru
Guru
Joined
May 2, 2020
Messages
2,345
While using Corpnewt's SSDTTime python script with your system DSDT.aml I generated a number of other SSDT's and OC patches that you might want to have a look at and see if they help with the configuration of your Hack.

Screenshot 2023-06-13 at 16.02.54.png SSDT's generated using system DSDT.aml and Corpnewt's SSDTTime python script

Some of the SSDT's you might already have in your setup, but as a combined SSDT or a generic AMD table, say from Dortania. SSDT's that are generated from Corpnewt's SSDTTime are faster to load and specific to the system they were generated from. So are usually better than the generic SSDT's available when first installing macOS.

The Results folder below contains the SSDT's in disassembled (.dsl) and ACPI (.aml) format. You should only add the ACPI machine language binary tables. The Disassembled tables are provided for future reference and in case you ever need to edit one of the tables.

Some of the SSDT's require an ACPI patch added to the config.plist, without these ACPI > Patch entries the SSDT's won't work.
  1. SSDT-HPET.aml ( 5 x patches)
  2. SSDT-XOSI.aml (1 x patch)
Just make sure you remove any existing SSDT's or patches before you use the tables and entries attached here.
 

Attachments

  • Results.zip
    7.9 KB · Views: 3

Lorys89

Active member
AMD OS X Member
Joined
Dec 16, 2022
Messages
183
So based on the information in the Screenshots above (post #11) and your DSDT.aml I have generated a couple of SSDT's for your system.

The first is SSDT-Bridge.aml, which was generated in Corpnewt's SSDTTime, using the your DSDT.aml and the PCIROOT(0)#PCI(0302)#PCI(0000) address from Windows.
This generated an SSDT which identified the hidden bridge/ACPI address segment (0000) as PXSX, as shown below.

View attachment 11012

I then obtained a copy of the Disable GPU SSDT from Dortania and using the information above created what I hope will be a working SSDT to disable your Nvidia GPU.

View attachment 11013 New SSDT to disable Nvidia GPU

These are both attached below and should be added to your /EFI/OC/ACPI folder with a companion entry for each SSDT added to your config.plist.

Try these two SSDT's and let me know what happens.
But if it uses weg can use on dp with pci root of nvidia
Inserting:
disable-gpu
01000000 data
 

tristan

New member
AMD OS X Member
Joined
May 23, 2023
Messages
29
While using Corpnewt's SSDTTime python script with your system DSDT.aml I generated a number of other SSDT's and OC patches that you might want to have a look at and see if they help with the configuration of your Hack.

View attachment 11017 SSDT's generated using system DSDT.aml and Corpnewt's SSDTTime python script

Some of the SSDT's you might already have in your setup, but as a combined SSDT or a generic AMD table, say from Dortania. SSDT's that are generated from Corpnewt's SSDTTime are faster to load and specific to the system they were generated from. So are usually better than the generic SSDT's available when first installing macOS.

The Results folder below contains the SSDT's in disassembled (.dsl) and ACPI (.aml) format. You should only add the ACPI machine language binary tables. The Disassembled tables are provided for future reference and in case you ever need to edit one of the tables.

Some of the SSDT's require an ACPI patch added to the config.plist, without these ACPI > Patch entries the SSDT's won't work.
  1. SSDT-HPET.aml ( 5 x patches)
  2. SSDT-XOSI.aml (1 x patch)
Just make sure you remove any existing SSDT's or patches before you use the tables and entries attached here.
thank you very much for your help and time !!

I just used your files and modify the config.plist, and don´t work....

stucks on this screen:

IMG_8851.jpg
 

tristan

New member
AMD OS X Member
Joined
May 23, 2023
Messages
29
But if it uses weg can use on dp with pci root of nvidia
Inserting:
disable-gpu
01000000 data

Thank you, but I try this metod and don´t work
 
Back
Top Bottom
  AdBlock Detected
Sure, ad-blocking software does a great job at blocking ads, but it also blocks some useful and important features of our website. For the best possible site experience please take a moment to disable your AdBlocker.