Contribute
Register

SSDT GPU (Graphics Card) Injection

Status
Not open for further replies.
Hi. my laptop is HD530+965M. And I can disable the HD530 in BIOS. If I don't disable HD530 in the BIOS , my laptop's monitor works with HD530, and HDMI connected monitor also works with 965M. But when I disable HD530 in the BIOS ,my laptop's monitor will not work, but the HDMI monitor still works. How I can fix laptop's monitor? Do you have any ideas? Thank you!
 
Hi. my laptop is HD530+965M. And I can disable the HD530 in BIOS. If I don't disable HD530 in the BIOS , my laptop's monitor works with HD530, and HDMI connected monitor also works with 965M. But when I disable HD530 in the BIOS ,my laptop's monitor will not work, but the HDMI monitor still works. How I can fix laptop's monitor? Do you have any ideas? Thank you!

Laptop questions are off-topic in the desktop forums.
Refer to the laptop forums/FAQ:
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/
 
hello

very curious: are you able to boot in dual NVIDIA with iMac pro definition?
are you on X.12.6 or X.13.3?

i tried tons of time with dual titan X on X.13 without success, the problem was the dual graphic card
and don't know if iMac Pro can be chosen for X.12.6 (I really don't think so)

if you have any tips I will be more than happy

@vulgo I ended up using the iMac Pro definition and it worked! I did not need to use the SSDT's, read about it working on insanelymac

Thanks!
 
Hello I come back after tons of tries without success
I hope that someone could help me

I have 2 titan x maxwell
I just try to let it works on x.12.6
And it is impossible

I tried of course many times the great step by step but no success

If someone can help me I will be very happy

Thx




810B4454-260E-4E83-A563-11C296ABE84E.jpeg
ED28BF3F-EC53-4182-844D-15D4817B218C.jpeg
C8F88128-59A0-4B1F-8223-EF535AE073BC.jpeg
9087E3C1-472C-4075-B57A-24B0E27E4D65.jpeg
E252194D-0396-4A4B-A4E5-6B6626A70BE5.jpeg
44839862-533B-4D39-A6C3-7AA4537FF787.jpeg
 
I've been working on SSDTs all day to try to get HDMI Audio over DisplayPort and haven't had much luck.

I don't have the issues most people see with black screens and whatnot; my graphics actually work fine. However, the HDMI Audio never populates.

I'm able to use NvidiaGraphicsFixup to get audio, but it caused a bunch of other issues, namely trouble waking from sleep, incorrect resolution on boot, and really laggy UI (possibly a memory leak). Since removing it, the system performs how I'd expect besides audio.

System:
CPU: i7-8700k
GPU: 2x EVGA 1080Ti FTW3
Monitor: Dell UP2715K (5K, dual DisplayPort)
System Definition: iMac 18,3

Things I've tried:
  1. I made custom SSDTs for each card and I can verify that in IORegistryExplorer it looks like renaming to GFX0/GFX1 has worked.
  2. I tried swapping DisplayPort ports and no combination works (1/2 and 2/1 display, 1/3 and 2/3 and vice versa do not display anything).
  3. I tried completely abandoning this method and going with toleda's script, which didn't work.
  4. I tried adding HDMIAudio.kext to no avail, and subsequently removed it.

I'm kind of at a loss here, so I'd really appreciate any help. I've attached the files that I think would help debug the issue. Thank you!
 

Attachments

  • ioregistryexplorer-20180331.ioreg
    11.3 MB · Views: 183
  • ssdt-1.aml
    375 bytes · Views: 227
  • ssdt-2.aml
    376 bytes · Views: 200
  • EFI.zip
    22.9 MB · Views: 144
I've been working on SSDTs all day to try to get HDMI Audio over DisplayPort and haven't had much luck.

I don't have the issues most people see with black screens and whatnot; my graphics actually work fine. However, the HDMI Audio never populates.

I'm able to use NvidiaGraphicsFixup to get audio, but it caused a bunch of other issues, namely trouble waking from sleep, incorrect resolution on boot, and really laggy UI (possibly a memory leak). Since removing it, the system performs how I'd expect besides audio.

System:
CPU: i7-8700k
GPU: 2x EVGA 1080Ti FTW3
Monitor: Dell UP2715K (5K, dual DisplayPort)
System Definition: iMac 18,3

Things I've tried:
  1. I made custom SSDTs for each card and I can verify that in IORegistryExplorer it looks like renaming to GFX0/GFX1 has worked.
  2. I tried swapping DisplayPort ports and no combination works (1/2 and 2/1 display, 1/3 and 2/3 and vice versa do not display anything).
  3. I tried completely abandoning this method and going with toleda's script, which didn't work.
  4. I tried adding HDMIAudio.kext to no avail, and subsequently removed it.

I'm kind of at a loss here, so I'd really appreciate any help. I've attached the files that I think would help debug the issue. Thank you!


try this
 

Attachments

  • config.plist
    5.9 KB · Views: 304
  • Archive 2.zip
    67.6 KB · Views: 137
Work in progress...
Updated step 3b and files 2/22/2017.

If you have come to this guide to deal with a "Black Screen" issue, please read this post first:

http://www.tonymacx86.com/graphics/...ro-6-1-imac-15-imac-17-system-definition.html

You may also want to take a look at this post if you feel you might be having other Nvidia Web Driver related issues:
Solving NVIDIA Driver Install & Loading Problems

Injecting your GPU/s in your ACPI tables can:
• Enable HDMI audio functionality from your GPU.
• Possibly resolve issues with connecting multiple monitors.
• Solve ports not working.
• Fix issues with hot-plugging monitors.
• Naming your GPU to "GFX1" can eliminate the "Black Screen" issue with the MacPro6,1 system definition e.g. losing video signal to your monitor when OSX finishes loading and you should reach the desktop at boot time (the system is running, fully functional but there is no signal to the monitor). [credit: dgsga and furter]. NOTE: The system will still be responsive (not frozen). If your system is unresponsive with a black screen, this will not help you. NOTE: This trick will only work with MacPro6,1 and NOT iMac15-17.

I prefer SSDTs over the DSDT for device injection as updating the BIOS, moving PCI cards, or adding/removing PCI cards may require you to extract and edit a new DSDT.

Background:

In OEM Apple ACPI tables, the GPU Devices are named as follows:

iMac13/14/15/17: Discrete GPU = "GFX0" (@0). Integrated GPU = "IGPU" (@2 or 0x00020000)
MacPro3,1/5,1: Discrete GPU#1 = "PSX1" (@0).
MacPro6,1: Discrete GPU#1 = "GFX1" (@0). Discrete GPU#2 = "GFX2" (@0).

The usual school of thought is that each GPU should have a unique name (1st GPU = GFX0, 2nd GPU = GFX1 etc etc etc). However, If you use MacPro6,1 with multiple GPUs, you need to name all GPUs GFX1. Any GPU with a different name will lose video signal after the "Apple Logo" boot progress screen.

Preparation:


The file attachment at the bottom of this post contains a basic starter SSDT named SSDT-1.aml. Please download and unzip the files now.

Restart your hackintosh and enter the Clover GUI (you may need to hold down the spacebar while it's booting if you have Timeout set to 0). Press the F4 key (this will extract your motherboard's OEM ACPI tables) and wait for 5 seconds (Clover won't give you any indication that it has extracted the files). Boot your hackintosh and mount your EFI partition (see my included Mount EFI apps).

IMPORTANT:
Make sure your clover config won't conflict with your new SSDT injection. Open your Clover config.plist (EFI/CLOVER/config.plist).

Make sure that you don't have "AddHDMI" active. If it is present, set it to "false":

Code:
    <key>ACPI</key>
    <dict>
        <key>DSDT</key>
        <dict>
...
            <key>Fixes</key>
            <dict>
...
                <key>AddHDMI_8000000</key>
                <false/>

I'm not sure if it matters if Clover is adding properties to your GPU. If they are present, you may want to remove them. If any of these keys are not present, it's OK, don't add them.
Code:
    <key>Devices</key>
    <dict>
        <key>AddProperties</key>
        <array>
            <dict>
                <key>Device</key>
                <string> *your GPU* </string>
                <key> *key* </key>
                <string> *any* </string>
...

Make sure that Clover is not using a EFI string to inject your GPU (you would have had to put it there yourself).
Code:
        <key>Inject</key>
        <false/>
        <key>NoDefaultProperties</key>
        <false/>
        <key>Properties</key>
        <string> *string of numbers* </string>

I'm not sure if it matters if Clover is faking your discrete GPU's device ID. Fake device ID's can be added to the SSDT if needed (info coming later but you might want to wait if you need a fake GPU ID). UseIntelHDMI might be OK but I'm not positive that it won't conflict with our Discrete GPU SSDT injection. If any of these keys are not present, it's OK, don't add them.
Code:
        <key>FakeID</key>
        <dict>
            <key>ATI</key>
            <string>0x0</string>
...
            <key>IntelGFX</key>
            <string>0x0</string>
...
            <key>NVidia</key>
            <string>0x0</string>
...
        <key>UseIntelHDMI</key>
        <false/>

Navigate to the EFI/CLOVER/ACPI/patched folder. If you have DSDT.aml or SSDT*.aml in this folder, verify that you don't already have an entry/s for your GPU/s in these files. If there are GPU entry/s in these ACPI files, you may either remove them, modify the device name/s or leave them alone and skip making a new one/s. You can not inject the same device more than once. If you already have a SSDT named SSDT-1.aml there, rename the starter SSDT-1.aml you just downloaded using the next sequentially higher number IE: SSDT-2.aml or SSDT-3.aml etc etc etc. Names you can use are: "SSDT.aml" or "SSDT-0.aml" through "SSDT-9.aml". If you have more than 1 GPU installed and would like to create SSDTs for them too, duplicate the unmodified starter SSDT and name it using the previously mentioned naming conventions. Continue duplicating and renaming until you have enough for all the GPUs you'd like to inject.


1) Location:

Find your GPU's location in your IO Registry. I prefer IORegistryExplorer.app but you can use IOJones if you prefer. Open your IO Registry viewer and find your GPU. You can try searching for the word "display" if you are lost. In this example, the GPU is located in the PCI slot named "NPE3" and the address is "@2"(0x00020000).
NOTE: The GPU was given the name "display" by default because it has no given name in the ACPI tables. It's address is @0 (Zero or 0x00) in NPE3 which is @2 (0x00020000) in PCI0. Your GPU may already have a name assigned to it in the ACPI tables like "GFX0@0" or "PEGP@0".
171402-ioreg-finddisplay.jpg


NOTE: "AppleACPIPCI" is the driver and not a device. "IOPP" is the PCI bridge for that slot and not a additional device (it has no "@" address). Take a note of the GPU's device name, or name of the PCI slot that your GPU is installed in. Use TextEdit to record your notes.

2) Path:


Navigate to the EFI/CLOVER/ACPI/origin folder. Open DSDT.aml with MaciASL http://sourceforge.net/projects/maciasl/ and enter the name you found in step 1 in the search box labeled "Find" at the top of the app. Use the ">" button next to the search box to go to the matching results. NOTE: The result you are looking for will start with the word "Device". EXAMPLE: "Device (NPE3)".

171401-maciasl-finddevice.jpg


Take a note of the device path at the far bottom left corner of the app but discard "DSDT" and separate each device with a period ".". Example: "_SB.PCI0.NPE3".
NOTE: If you can't find your device in the DSDT, open your SSDTs from the origin folder and search for the device in each of them. Discard "SSDT" instead of "DSDT" in the path if the device was in a SSDT. Take a note of the device's "Name (_ADR, ...)" (address). If it is "Name (_ADR, 0x00010000)", "Name (_ADR, 0x00020000)", "Name (_ADR, 0x00030000)", or something similar, you will add GFX1 to it in step 3a.
Examples:
PCI0@0 > NPE3@2 > display@0 (_SB.PCI0.NPE3)
PCI0@0 > NPE1@1 > display@0 (_SB.PCI0.NPE1)
PCI0@0 > NPE7@3 > display@0 (_SB.PCI0.NPE7)
PCI0@0 > NPE9@3,2 > display@0 (_SB.PCI0.NPE9)

If it is "Name (_ADR, Zero)", "Name (_ADR, 0x00)" or "Name (_ADR, 0xFFFF)", you will need to disable the device and replace it with GFX1 in step 3b. You should also take note of what device it is inside of and what other devices are located there and what their addresses are. In the example below, the GPU is loaded in "Device (H000)" which is in BR3A. BR3A is the PCI slot but has many other devices in it. H000-H007 and D07E are reserved addresses for devices to load. "Device (H000)" will need to be disabled so that "Device (GFX1)" [new GPU name] can take the address "Name (_ADR, 0x00)". "Device (H001)" will need to be disabled as well so that "Device (HDAU)" [HDMI audio] can take the address "Name (_ADR, 0x01)".

full


BUT, we're not done yet. In the image below, you can see that "Device (D07E)" has the address "Name (_ADR, 0xFFFF)". Because it is FFFF it can be enumerated to anything. The GPU will try to load to it before the new GFX1 device in the new SSDT. So we will need to disable D07E as well. Take note of all these device names and paths.

full


Examples:
PCI0@0 > PEG0@1 > PEGP@0 (\_SB.PCI0.PEG0.PEGP)
PCI0@0 > BR3A@3 > H000@0 (_SB.PCI0.BR3A.H000)
PCI0@0 > BR3A@3 > D077@0 (_SB.PCI0.BR3A.D07E)
PCI0@0 > BR2A@2 > H000@0 (_SB.PCI0.BR2A.H000)
PCI0@0 > BR2A@2 > D075@0 (_SB.PCI0.BR3A.D075)


3) Patching:


Open the downloaded SSDT-1.aml (or the duplicate you are working on) in MaciASL.

If your GPU already had a device name (GFX0, PEGP, PXSX, H000, D077 or anything else) with a Zero (0x0) address in the OEM ACPI tables (DSDT or a SSDT), Skip to Step 3b.


If your GPU had no entry in the OEM ACPI tables, and showed up in IORegistryExplorer as "display@0" , continue here with step 3a.

3a) Add GFX1 to the PCI slot device:

Replace "_SB.PCI0.NPE3" with your device path from step 2 (if it is different), but leave ".GFX1" ".HDAU" at the end for the 2 devices.

EXAMPLE: If your path was \_SB.PCI0.PEG0, then Replace just the red part in "Device (_SB.PCI0.NPE3.GFX1)" & "Device (_SB.PCI0.NPE3.HDAU)" with \_SB.PCI0.PEG0.

BEFORE:

Code:
{
    Device (_SB.PCI0.NPE3.GFX1)
    {
        Name (_ADR, Zero)
        Name (_SUN, One)
    }


    Device (_SB.PCI0.NPE3.HDAU)
    {
        Name (_ADR, One)
    }
}

AFTER:

Code:
{
    Device (\_SB.PCI0.PEG0.GFX1)
    {
        Name (_ADR, Zero)
        Name (_SUN, One)
    }


    Device (\_SB.PCI0.PEG0.HDAU)
    {
        Name (_ADR, One)
    }
}

Continue to Step 3c


.
shilohh
. Hi man;) . sorry for being out of place....
I have a one major problem where I cant get my dell m6700 i7-3940XM k5000(no intel video card) internal screen to work - all external monitor connections works just fine. I have tried all kind of stuff that i cant even remember... can i get help from you ? I thinks you can understand and fix it easily...... how? - thanks ....please...
I tried to understand if this is my case but i got confused....(https://www.tonymacx86.com/threads/ssdt-gpu-graphics-card-injection.183354/ )

I really need help - i understand fro dell that this laptop is only capable of 3 external screen and no internal even in windows - and OS X probably activates all 3 connections (hdmi ,vga ,dp ) on boot so they all work but internal is dead....
here are some info files from my laptop - ioreg,dsdt,efi

thanks!!!!!!!!
 

Attachments

  • exports for help.zip
    20.2 MB · Views: 138
Last edited:
@shilohh
I followed you manual. But i have no chance to do it. I use in Total
2x Titan X in PCI Slot 1 and 3
Then iGPU 530.
My system works quit good.
But in the Devices it donw show the correct slots and in openCL tools there is only one Nvidia card.
When i use CUDA all works normal.

Do you have any Tip and idea for me how to solve the issue ?.

Greets Andy

I use actual webdriver from nvidia the actual OS 10.13.6
My Mainboard is Gigabyte Z170 Gaming G1

Pavo helped me a lot but with the 2 GPU this he have also no idea.
 

Attachments

  • EFI.zip
    20.1 MB · Views: 135
  • iMac-actual.iojones
    1.3 MB · Views: 162
Work in progress...
Updated step 3b and files 2/22/2017.

If you have come to this guide to deal with a "Black Screen" issue, please read this post first:

http://www.tonymacx86.com/graphics/...ro-6-1-imac-15-imac-17-system-definition.html

You may also want to take a look at this post if you feel you might be having other Nvidia Web Driver related issues:
Solving NVIDIA Driver Install & Loading Problems

Injecting your GPU/s in your ACPI tables can:
• Enable HDMI audio functionality from your GPU.
• Possibly resolve issues with connecting multiple monitors.
• Solve ports not working.
• Fix issues with hot-plugging monitors.
• Naming your GPU to "GFX1" can eliminate the "Black Screen" issue with the MacPro6,1 system definition e.g. losing video signal to your monitor when OSX finishes loading and you should reach the desktop at boot time (the system is running, fully functional but there is no signal to the monitor). [credit: dgsga and furter]. NOTE: The system will still be responsive (not frozen). If your system is unresponsive with a black screen, this will not help you. NOTE: This trick will only work with MacPro6,1 and NOT iMac15-17.

I prefer SSDTs over the DSDT for device injection as updating the BIOS, moving PCI cards, or adding/removing PCI cards may require you to extract and edit a new DSDT.

Background:

In OEM Apple ACPI tables, the GPU Devices are named as follows:

iMac13/14/15/17: Discrete GPU = "GFX0" (@0). Integrated GPU = "IGPU" (@2 or 0x00020000)
MacPro3,1/5,1: Discrete GPU#1 = "PSX1" (@0).
MacPro6,1: Discrete GPU#1 = "GFX1" (@0). Discrete GPU#2 = "GFX2" (@0).

The usual school of thought is that each GPU should have a unique name (1st GPU = GFX0, 2nd GPU = GFX1 etc etc etc). However, If you use MacPro6,1 with multiple GPUs, you need to name all GPUs GFX1. Any GPU with a different name will lose video signal after the "Apple Logo" boot progress screen.

Preparation:


The file attachment at the bottom of this post contains a basic starter SSDT named SSDT-1.aml. Please download and unzip the files now.

Restart your hackintosh and enter the Clover GUI (you may need to hold down the spacebar while it's booting if you have Timeout set to 0). Press the F4 key (this will extract your motherboard's OEM ACPI tables) and wait for 5 seconds (Clover won't give you any indication that it has extracted the files). Boot your hackintosh and mount your EFI partition (see my included Mount EFI apps).

IMPORTANT:
Make sure your clover config won't conflict with your new SSDT injection. Open your Clover config.plist (EFI/CLOVER/config.plist).

Make sure that you don't have "AddHDMI" active. If it is present, set it to "false":

Code:
    <key>ACPI</key>
    <dict>
        <key>DSDT</key>
        <dict>
...
            <key>Fixes</key>
            <dict>
...
                <key>AddHDMI_8000000</key>
                <false/>

I'm not sure if it matters if Clover is adding properties to your GPU. If they are present, you may want to remove them. If any of these keys are not present, it's OK, don't add them.
Code:
    <key>Devices</key>
    <dict>
        <key>AddProperties</key>
        <array>
            <dict>
                <key>Device</key>
                <string> *your GPU* </string>
                <key> *key* </key>
                <string> *any* </string>
...

Make sure that Clover is not using a EFI string to inject your GPU (you would have had to put it there yourself).
Code:
        <key>Inject</key>
        <false/>
        <key>NoDefaultProperties</key>
        <false/>
        <key>Properties</key>
        <string> *string of numbers* </string>

I'm not sure if it matters if Clover is faking your discrete GPU's device ID. Fake device ID's can be added to the SSDT if needed (info coming later but you might want to wait if you need a fake GPU ID). UseIntelHDMI might be OK but I'm not positive that it won't conflict with our Discrete GPU SSDT injection. If any of these keys are not present, it's OK, don't add them.
Code:
        <key>FakeID</key>
        <dict>
            <key>ATI</key>
            <string>0x0</string>
...
            <key>IntelGFX</key>
            <string>0x0</string>
...
            <key>NVidia</key>
            <string>0x0</string>
...
        <key>UseIntelHDMI</key>
        <false/>

Navigate to the EFI/CLOVER/ACPI/patched folder. If you have DSDT.aml or SSDT*.aml in this folder, verify that you don't already have an entry/s for your GPU/s in these files. If there are GPU entry/s in these ACPI files, you may either remove them, modify the device name/s or leave them alone and skip making a new one/s. You can not inject the same device more than once. If you already have a SSDT named SSDT-1.aml there, rename the starter SSDT-1.aml you just downloaded using the next sequentially higher number IE: SSDT-2.aml or SSDT-3.aml etc etc etc. Names you can use are: "SSDT.aml" or "SSDT-0.aml" through "SSDT-9.aml". If you have more than 1 GPU installed and would like to create SSDTs for them too, duplicate the unmodified starter SSDT and name it using the previously mentioned naming conventions. Continue duplicating and renaming until you have enough for all the GPUs you'd like to inject.


1) Location:

Find your GPU's location in your IO Registry. I prefer IORegistryExplorer.app but you can use IOJones if you prefer. Open your IO Registry viewer and find your GPU. You can try searching for the word "display" if you are lost. In this example, the GPU is located in the PCI slot named "NPE3" and the address is "@2"(0x00020000).
NOTE: The GPU was given the name "display" by default because it has no given name in the ACPI tables. It's address is @0 (Zero or 0x00) in NPE3 which is @2 (0x00020000) in PCI0. Your GPU may already have a name assigned to it in the ACPI tables like "GFX0@0" or "PEGP@0".
171402-ioreg-finddisplay.jpg


NOTE: "AppleACPIPCI" is the driver and not a device. "IOPP" is the PCI bridge for that slot and not a additional device (it has no "@" address). Take a note of the GPU's device name, or name of the PCI slot that your GPU is installed in. Use TextEdit to record your notes.

2) Path:


Navigate to the EFI/CLOVER/ACPI/origin folder. Open DSDT.aml with MaciASL http://sourceforge.net/projects/maciasl/ and enter the name you found in step 1 in the search box labeled "Find" at the top of the app. Use the ">" button next to the search box to go to the matching results. NOTE: The result you are looking for will start with the word "Device". EXAMPLE: "Device (NPE3)".

171401-maciasl-finddevice.jpg


Take a note of the device path at the far bottom left corner of the app but discard "DSDT" and separate each device with a period ".". Example: "_SB.PCI0.NPE3".
NOTE: If you can't find your device in the DSDT, open your SSDTs from the origin folder and search for the device in each of them. Discard "SSDT" instead of "DSDT" in the path if the device was in a SSDT. Take a note of the device's "Name (_ADR, ...)" (address). If it is "Name (_ADR, 0x00010000)", "Name (_ADR, 0x00020000)", "Name (_ADR, 0x00030000)", or something similar, you will add GFX1 to it in step 3a.
Examples:
PCI0@0 > NPE3@2 > display@0 (_SB.PCI0.NPE3)
PCI0@0 > NPE1@1 > display@0 (_SB.PCI0.NPE1)
PCI0@0 > NPE7@3 > display@0 (_SB.PCI0.NPE7)
PCI0@0 > NPE9@3,2 > display@0 (_SB.PCI0.NPE9)

If it is "Name (_ADR, Zero)", "Name (_ADR, 0x00)" or "Name (_ADR, 0xFFFF)", you will need to disable the device and replace it with GFX1 in step 3b. You should also take note of what device it is inside of and what other devices are located there and what their addresses are. In the example below, the GPU is loaded in "Device (H000)" which is in BR3A. BR3A is the PCI slot but has many other devices in it. H000-H007 and D07E are reserved addresses for devices to load. "Device (H000)" will need to be disabled so that "Device (GFX1)" [new GPU name] can take the address "Name (_ADR, 0x00)". "Device (H001)" will need to be disabled as well so that "Device (HDAU)" [HDMI audio] can take the address "Name (_ADR, 0x01)".

full


BUT, we're not done yet. In the image below, you can see that "Device (D07E)" has the address "Name (_ADR, 0xFFFF)". Because it is FFFF it can be enumerated to anything. The GPU will try to load to it before the new GFX1 device in the new SSDT. So we will need to disable D07E as well. Take note of all these device names and paths.

full


Examples:
PCI0@0 > PEG0@1 > PEGP@0 (\_SB.PCI0.PEG0.PEGP)
PCI0@0 > BR3A@3 > H000@0 (_SB.PCI0.BR3A.H000)
PCI0@0 > BR3A@3 > D077@0 (_SB.PCI0.BR3A.D07E)
PCI0@0 > BR2A@2 > H000@0 (_SB.PCI0.BR2A.H000)
PCI0@0 > BR2A@2 > D075@0 (_SB.PCI0.BR3A.D075)


3) Patching:


Open the downloaded SSDT-1.aml (or the duplicate you are working on) in MaciASL.

If your GPU already had a device name (GFX0, PEGP, PXSX, H000, D077 or anything else) with a Zero (0x0) address in the OEM ACPI tables (DSDT or a SSDT), Skip to Step 3b.


If your GPU had no entry in the OEM ACPI tables, and showed up in IORegistryExplorer as "display@0" , continue here with step 3a.

3a) Add GFX1 to the PCI slot device:

Replace "_SB.PCI0.NPE3" with your device path from step 2 (if it is different), but leave ".GFX1" ".HDAU" at the end for the 2 devices.

EXAMPLE: If your path was \_SB.PCI0.PEG0, then Replace just the red part in "Device (_SB.PCI0.NPE3.GFX1)" & "Device (_SB.PCI0.NPE3.HDAU)" with \_SB.PCI0.PEG0.

BEFORE:

Code:
{
    Device (_SB.PCI0.NPE3.GFX1)
    {
        Name (_ADR, Zero)
        Name (_SUN, One)
    }


    Device (_SB.PCI0.NPE3.HDAU)
    {
        Name (_ADR, One)
    }
}

AFTER:

Code:
{
    Device (\_SB.PCI0.PEG0.GFX1)
    {
        Name (_ADR, Zero)
        Name (_SUN, One)
    }


    Device (\_SB.PCI0.PEG0.HDAU)
    {
        Name (_ADR, One)
    }
}

Continue to Step 3c


.

Hi. I want to try my luck .
I have some thoughts about my system but i want to ask you to take a look at my system and point me to the problem that preventing me from laptop screen to work while the rest of the ports does work....thanks
 

Attachments

  • DSDT.aml
    41.6 KB · Views: 147
  • SSDT-3-NvdTabl.aml
    7.6 KB · Views: 140
  • USER’s iMac18,3.ioreg
    7 MB · Views: 131
Hello,

I have a GTX980Ti 6GB with 6 video outputs (3xDP, 2xDVi, 1xHDMI) mounted on a Z170X-Gaming-5 (port PCI-E 1) under High Sierra 10.13.6 with the latest Web-Drivers and Clover 4741.

The iGPU is disabled in the BIOS.

The SMBIOS used is a SMBIOS of MacPro6,1 (because I wish to add a GTX750 1Go with 2xDVI and 2xHDMI on the PCI-E 2 port of the motherboard, to be able to add 2 or 3 screens, but only after my « problem "be solved).

When I connect only 4 screens (on 3xDP and 1xHDMI) I have no problem, however, my problem is "begins" when I connect my 2 remaining screens on 2xDVI.

When I start with my 6 connected screens, I have either big display problems (glithcs, monstrous artifacts) or most often my 2 connected screens in DVI remains in Black-screen.)

I will be grateful if you could help me, you will find attached my complete EFI file (APCI Origin, Congif.plist MacPro6,1) + an IOJones file.

Thanks in advance!

PS: "Sorry for my English, I used Google Trad."
 

Attachments

  • Files.zip
    10.9 MB · Views: 107
Status
Not open for further replies.
Back
Top