Contribute
Register

SSDT GPU (Graphics Card) Injection

Status
Not open for further replies.
Joined
Jul 10, 2013
Messages
396
Motherboard
Gigabyte X299X Designare 10G
CPU
i9-10900X
Graphics
RX 5500 XT
Mac
  1. iMac
  2. MacBook Pro
  3. Mac Pro
Classic Mac
  1. eMac
  2. iBook
  3. iMac
  4. PowerBook
Mobile Phone
  1. Android
Hello there @shilohh I've followed the guide and made few SSDT for different setups, I know how to make audio through RX HDMI work, a basic SSDT from @toleda makes all the merry.

Now, I find myself stuck with something silly, I've made several SSDT for a 1070, and for the life of me that I can't make the audio through HDMI work¿?¿? It used to.. I've tried even creating the External address on the SSDT which is how it used to work, but nothing...

A hand here please?

Appreciate it!
 
Joined
May 16, 2011
Messages
38
Motherboard
MSI MEG X570 Unify
CPU
Ryzen 3900XT
Graphics
RX 6800 XT
Mac
  1. Mac mini
Mobile Phone
  1. iOS
Dear shilohh,

Please take a look on my screenshots. ....Almost,. BUT

1.I have 2 displays. A 4k TV connected to the PC with HDMI2.0 and a FULL HD TV connected to the PC with Display port.
2.If I plug in only the 4k TV black screen effect but the system response. (Typical case as you described)
3.If I plug the Full HD TV as well (next to the 4k hdmi) the screen and the performance as you can see is perfect on full HD TV.
4.The upper things after the clean install. I created SSDTs for peg0 to gfx1 for to PCI1 and PCI0 but the situation is very similar without any SSDT-s. HD TV works 4k don't.

As I see the IOreg the rename won't work but both GTX1080 detected perfectly. Only 1 thing is strange : Both TV detected 4k.

Please give me some advice to step forward.

Attachment:

1. screenshot
2. DSDT from Origin
3. modified SSDT and SSDT-1 (for 2nd GPU)
 

Attachments

  • Screen Shot 2017-06-19 at 15.08.22.png
    Screen Shot 2017-06-19 at 15.08.22.png
    1.3 MB · Views: 182
  • DSDT.aml
    171.9 KB · Views: 147
  • SSDT-1.aml
    187 bytes · Views: 165
  • SSDT.aml
    186 bytes · Views: 171
Joined
Nov 6, 2016
Messages
33
Motherboard
GA-Z170M-D3H
CPU
Intel i7
Graphics
GIGABYTE GeForce GTX 950 2GB GV-N950XTREME, Gigabyte Radeon RX 460
Mobile Phone
  1. Android
Shilohh,

Thx for the time and effort for creating this guide. I thought I followed the instructions, I see that the GPU is being assigned to GFX1, but am still dealing with the blank screen issue.

Initially, I've tried different systems definitions (MacPros, but presently 14,2), disable the BIOS on board graphics, inserted Lilu.kext and nvidiagraphicsfixup.kext into the
/Library/Extensions
/System/Library/Extensions (using kextBeast)
/efi/clover/kexts/others
directories as well as used AGDPfix to modify the AppleGraphicsControl.kext

Since this didn't work, I changed my configuration to MacPro 6,1 and tried modifying the GPU assignment as you suggested. I'm still with a blank screen (which can be controlled from another mac).

I was looking for clarification on issue. I identified my GPU in PEGP@0. This corresponded to the paths:
_SB.PCI0.PEG0.PEGP
_SB.PCI0.PEG1.PEGP
_SB.PCI0.PEG2.PEGP

Each had an address of _ADR,ZERO

As described in step 3B, I patched SSDT-1 with the contents of the file Disable PCI0.PEG0.PEGP.txt. I repeated the patching of SSDT-1 two additional times replacing PEG0 for PEG1 and then PEG2. As the last step, I changed the "PCI0" to PEG0 and added the Nvidia Maxwell HDMI SSDT patch

It was compiled without an issue and I placed it into the patched folder. Unfortunately when rebooting I ended up with the same blank screen problem.

I only have the single GTX-950; however, did I need to create three separate SSDT files one for each of PEG0, PEG1, PEG2? If so, which one should receive the @0? Any other suggestions?

Ron
 

Attachments

  • Screen Shot 2017-06-26 at 11.05.58 PM.png
    Screen Shot 2017-06-26 at 11.05.58 PM.png
    222.4 KB · Views: 195
  • config.plist
    7.4 KB · Views: 202
  • SSDT-1.aml
    450 bytes · Views: 150
Last edited:
Joined
Mar 20, 2017
Messages
46
CPU
Intel i7-4720HQ
Graphics
NVidia GTX 980m
Mobile Phone
  1. Android
is there a mixup in the tutorial? the

https://www.tonymacx86.com/threads/ssdt-gpu-graphics-card-injection.183354/#post-1197682

before / after code segments have

Device (_SB.PCI0.NPE3.GFX1)

and then

Device (_SB.PCI0.BR3A.GFX1) ??

or is this purpose...

and step 3b? edit patches so that the path matches exactly your path? what is "my" path?

my GPU seems to be at \_SB.PCI0.PEG0.GFX0

should i patch something that is already zero? (check image from this post)
 

Attachments

  • Bildschirmfoto 2017-07-10 um 21.29.35.png
    Bildschirmfoto 2017-07-10 um 21.29.35.png
    209 KB · Views: 148
Joined
Jul 12, 2015
Messages
23
Motherboard
MSI
CPU
intel
Graphics
AMD
Mac
  1. iMac
Classic Mac
  1. iMac
Mobile Phone
  1. iOS
Hi....
I just changed my card to EVGA Geforce GTX 1070 FTW2 Gaming. Please help verify whether I must apply the patching?
It is GFX1 at the beginning.
Thanks.
 

Attachments

  • Screen Shot 2560-07-17 at 9.29.30 PM.png
    Screen Shot 2560-07-17 at 9.29.30 PM.png
    12.4 MB · Views: 156
Joined
Oct 29, 2011
Messages
1
Motherboard
10.6.8
CPU
E7500
Graphics
nvidia 9400 gt
Mac
Classic Mac
  1. Power Mac
Mobile Phone
Hey Shilohh! What great guide you maked buddy! It worked wonderfully for me! Only one thing I still cannot figure out. How do i change the boot display to @2? I've tried with the patch of correspondent display, but it did'nt work. Can you help me please?
 
Joined
Sep 1, 2016
Messages
35
Motherboard
Asus X-99 DeluxeII
CPU
E5-2696 v4
Graphics
2* Radeon VII
Mac
  1. MacBook Pro
  2. Mac Pro
Classic Mac
  1. iMac
Mobile Phone
  1. iOS
Thanks @shilohh for this great guide, only got a couple questions ¿
I have upgraded on my Asus X99 Deluxe || from 2* Titan X (maxwell) -> 2* EVGA GTX 1080Ti FTW3

Which works very well with both graphics card's in my system, but now I changed the GPU's the system don't boot anymore..
As solution use 1 GPU in the system it boots normal, and apply the SSDT GPU for each card one at a time.

The first time with the disable patch the SSDT GPU for my first card returned from H000@0 to:

(_SB.PCI0@0.BR3A@3.D080@0 )

Then patched again with the desired "D080" patch from the text files, and then it returned with the wished "GFX1@0"

- SSDT-1.aml = (_SB.PCI0@0.BR3A@3.H000@0 ) @ GFX1@0
= (_SUN, One) + "onboard-1"

- SSDT-2.aml = (_SB.PCI0@0.BR2A@2.D07E@0 ) @ GFX1@0
= (_SUN, 0x02) + "onboard-2"


When I install both GPU's back into the PCIe slots, the system don't boot anymore stuck on a black screen or clover verbose..

Before the upgrade installed: Lilu.kext & NVDAStartupWeb.kext + AGDPfix 1.3 witch patched plist from: AppleGraphicsDevicePolicy.kext

From:

Code:
   <key>Mac-F60DEB81FF30ACF6</key>
   <string>Config1</string>
To:
Code:
   <key>Mac-F60DEB81FF30ACF6</key>
   <string>none</string>


The problem now because of a blackscreen?: AppleGraphicsDevicePolicy.kext don't request into the info.plist:
Code:
<key>Config1</key>
            <dict>
                <key>GFX1</key>
                <dict>
                    <key>unload</key>
                    <false/>
                </dict>


As for the information for other people who are stuck on this point with a SMBIOS: MacPro6,1

Whats is the best solution for this? when I return board ID: Mac-F60DEB81FF30ACF6 -> to "Config1" it's unload the ports..
And clover verbose get stuck on GPU1 (SSDT-1) and GPU2 boots with a distorted screen trough displayport:
Code:
IOConsoleUsers: time(0) 0->0, lin 0, llk1,
IOConsoleUsers: gIOScreenLockState 3, hs 0, bs 0, now 0, sm 0x0

IMG_1629.JPG



Another question, maybe is it possible is there a way to patch the GPU fan speeds on temperatures with a SSDT ?
 

Attachments

  • SSDT-1.aml
    258 bytes · Views: 157
  • SSDT-2.aml
    211 bytes · Views: 158
Last edited:
Joined
Jul 18, 2017
Messages
1
OMG.....Yeah! Success.
Thanks a lot...Mr. Vulgo. You're like my God. It has been half a year under hopeless.

My GTX1060 can have full 6GB. Dell P2415Q can work. Two monitors can display normally.
However, the max resolution is 3008x1692, not 4K. Any idea, sir? However, I'm very glad what I can have now.

I uploaded my files as a case study for other persons to try out, and also if you want to verify it again.

Confirm. This post does really work, especially a great help from Mr. Vulgo.


Thanks a lot to Mr. Vulgo again.

Does your hdmi audio work?
 
Joined
Apr 6, 2013
Messages
93
Motherboard
GA-H61N-USB3
CPU
i5-3570
Graphics
GT 640
Mac
  1. iMac
Mobile Phone
  1. iOS
First of all: GREAT blog. Thanks, shilohh (but also thanks to slim.jim for directing me to the SSDT). I have two cards (1) EVGA GeForce GT 640 and (2) EVGA GeForce GT 440. Well you know the problem (one Fermi the other it's not). Following your guide shilohh, I was able to write two SSDT (attached) and changing name of both GPU to GFX1(attached a screen shot of IORegistryExplorer). Success! However, I have to inject Nvidia for my second card (440), and I do it before booting. I don’t mind I can place true in the config.plist (by the way where? I attached the config.plist). I can attach 1 Apple Cinema display to each card. Success! I suspect that I can attach a third Apple Cinema (and maybe a fourth one) to my first card (to my second card). Great! The trouble comes when I try to connect an HDMI to the first card (nothing happens to my HDMI video, it says no connection) or when I try to connect an HDMI to my second card (actually in this case I lose the video from the second Apple Cinema). Any idea why? I am using MB Asus P7P55D-E-Pro, with i7. Anyway, thanks shilohh!!
 

Attachments

  • Screen Shot 2017-09-03 at 11.33.47 AM.png
    Screen Shot 2017-09-03 at 11.33.47 AM.png
    225 KB · Views: 107
  • SSDT-1.aml
    296 bytes · Views: 151
  • SSDT-2.aml
    572 bytes · Views: 143
  • config.plist
    6 KB · Views: 200

shilohh

Moderator
Joined
Jan 2, 2012
Messages
1,764
Motherboard
Asus Prime Z490-A
CPU
i9-10850K
Graphics
Sapphire Radeon Pulse RX 5700 XT
Mac
  1. MacBook Pro
  2. Mac Pro
Mobile Phone
  1. Android
First of all: GREAT blog. Thanks, shilohh (but also thanks to slim.jim for directing me to the SSDT). I have two cards (1) EVGA GeForce GT 640 and (2) EVGA GeForce GT 440. Well you know the problem (one Fermi the other it's not). Following your guide shilohh, I was able to write two SSDT (attached) and changing name of both GPU to GFX1(attached a screen shot of IORegistryExplorer). Success! However, I have to inject Nvidia for my second card (440), and I do it before booting. I don’t mind I can place true in the config.plist (by the way where? I attached the config.plist). I can attach 1 Apple Cinema display to each card. Success! I suspect that I can attach a third Apple Cinema (and maybe a fourth one) to my first card (to my second card). Great! The trouble comes when I try to connect an HDMI to the first card (nothing happens to my HDMI video, it says no connection) or when I try to connect an HDMI to my second card (actually in this case I lose the video from the second Apple Cinema). Any idea why? I am using MB Asus P7P55D-E-Pro, with i7. Anyway, thanks shilohh!!
You actually don't want to use clover's injections. You can accomplish the same result using the ssdt for the firmi card. Save a ioreg with your current working config so you can use the data in your ssdt.

See this section of the guide:
https://www.tonymacx86.com/threads/ssdt-gpu-graphics-card-injection.183354/#post-1197684
 
Status
Not open for further replies.
Top