Jump to content
tokia

Dual dedicated GPU on Mojave (NVIDIA & AMD)

9 posts in this topic

Recommended Posts

Hello,

 

My desktop Hackintosh is running macOS Mojave 10.14.2 with two dedicated GPUs installed: NVIDIA GTX 1080 Ti, AMD Radeon HD 7970.

 

The AMD GPU is used primarily under macOS and the NVIDIA one under Windows.

 

macOS boots without issues as long as there are no displays connected to the NVIDIA GPU. If a display is connected then the display connected to the AMD GPU will become blank. The system can be accessed using Screen Sharing/VNC.

 

There are no problems if I swap PCI-e slots for the GPUs so that the AMD GPU is in the first slot (primary GPU), but I prefer not to do this.

 

I have tried to remove the whole PCI (bridge) device in the DSDT file and all the lines that refer to it. The PCI entries in ioreg and System Information are gone but System Information still shows an NVIDIA GPU under Graphics/Display.

 

Many of the suggestions I have found in guides and forum posts do not seem to apply here. My problem with some of the guides and answers is that they give the solution without explaining how anything works, or they tell you what to do without explaining the reasons behind it.

 

What else can I do? Thank you for any assistance you can provide!

 

I have attached some files that may help you help me.

 

DSDT_BIOS_3101.zip contains the original ACPI (*.aml) files without any patches.

Send me Steffens-iMac.zip is a file produced by RunMe.app, and do contain simple patches to rename some devices.

DSDT.dsl.patch is a diff of the original DSDT.dsl file and the one with the PCI devices removed (commented out).

 

Motherboard: ASUS Rampage V Extreme (X99), BIOS version 3101 (macOS does not boot with anything newer).

Clover version: 4813.

 

DSDT.dsl.patch:

--- /Users/sl/Desktop/DSDT_BIOS_3101/DSDT.dsl	2018-12-17 05:24:30.000000000 +0100
+++ /Volumes/EFI/EFI/CLOVER/ACPI/patched/DSDT.dsl	2018-12-17 16:52:08.000000000 +0100
@@ -5,7 +5,7 @@
  * 
  * Disassembling to symbolic ASL+ operators
  *
- * Disassembly of DSDT.aml, Mon Dec 17 05:24:30 2018
+ * Disassembly of DSDT.aml, Mon Dec 17 04:01:52 2018
  *
  * Original Table Header:
  *     Signature        "DSDT"
@@ -2128,7 +2128,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -2274,7 +2274,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -2420,7 +2420,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -2570,7 +2570,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -2803,12 +2803,14 @@
                 If ((CSTA (Arg0, Arg1) == 0x00))
                 {
                     FLAG = 0x00
-                    PRID (APID = 0xFF) = 0xFF
+                    APID = 0xFF
+                    PRID = 0xFF
                 }
                 Else
                 {
                     Local0 = APID
-                    PRID (FLAG = 0x01) = Local0
+                    FLAG = 0x01
+                    PRID = Local0
                 }
 
                 Return (APIC)
@@ -15259,7 +15261,7 @@
                             ^BR2B.OSHP ()
                             ^BR2C.OSHP ()
                             ^BR2D.OSHP ()
-                            ^BR3A.OSHP ()
+                            //^BR3A.OSHP ()
                             ^BR3B.OSHP ()
                             ^BR3C.OSHP ()
                             ^BR3D.OSHP ()
@@ -26861,7 +26863,7 @@
                 }
             }
 
-            Device (BR3A)
+            /*Device (BR3A)
             {
                 Name (_ADR, 0x00030000)  // _ADR: Address
                 OperationRegion (MCTL, SystemMemory, 0xE0013188, 0x04)
@@ -27496,7 +27498,7 @@
                 {
                     Name (_ADR, 0xFFFF)  // _ADR: Address
                 }
-            }
+            }*/
 
             Device (BR3B)
             {
@@ -30267,7 +30269,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -30567,21 +30569,21 @@
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4158,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4158,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0001,             // Length
                     ,, , TypeStatic, DenseTranslation)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x5758,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x5758,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0000,             // Length
                     ,, , TypeStatic, DenseTranslation)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x5858,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x5858,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0000,             // Length
                     ,, , TypeStatic, DenseTranslation)
@@ -37604,7 +37606,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -37904,21 +37906,21 @@
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4558,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4558,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0001,             // Length
                     ,, , TypeStatic, DenseTranslation)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4259,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4259,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0000,             // Length
                     ,, , TypeStatic, DenseTranslation)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4359,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4359,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0000,             // Length
                     ,, , TypeStatic, DenseTranslation)
@@ -44941,7 +44943,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -45241,21 +45243,21 @@
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4958,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4958,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0001,             // Length
                     ,, , TypeStatic, DenseTranslation)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4559,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4559,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0000,             // Length
                     ,, , TypeStatic, DenseTranslation)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4659,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4659,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0000,             // Length
                     ,, , TypeStatic, DenseTranslation)
@@ -53823,7 +53825,7 @@
                 Notify (\_SB.PCI0.BR2D.H007, Local0)
             }
 
-            If ((\_SB.PCI0.BR3A.PMEP == 0x01))
+            /*If ((\_SB.PCI0.BR3A.PMEP == 0x01))
             {
                 Local0 = \_SB.PCI0.BR3A.PMEH (0x05)
             }
@@ -53848,7 +53850,7 @@
                 Notify (\_SB.PCI0.BR3A.H005, Local0)
                 Notify (\_SB.PCI0.BR3A.H006, Local0)
                 Notify (\_SB.PCI0.BR3A.H007, Local0)
-            }
+            }*/
 
             If ((\_SB.PCI0.BR3B.PMEP == 0x01))
             {
@@ -54608,11 +54610,11 @@
                     \_SB.PCI0.BR2D.PMEP = 0x01
                 }
 
-                If ((Local1 == 0x07))
+                /*If ((Local1 == 0x07))
                 {
                     \_SB.PCI0.BR3A.PMES = 0x01
                     \_SB.PCI0.BR3A.PMEP = 0x01
-                }
+                }*/
 
                 If ((Local1 == 0x08))
                 {
@@ -54879,10 +54881,10 @@
                 Notify (\_SB.PCI0.BR2D, 0x02)
             }
 
-            If ((\_SB.PCI0.BR3A.DEVS () != 0x00))
+            /*If ((\_SB.PCI0.BR3A.DEVS () != 0x00))
             {
                 Notify (\_SB.PCI0.BR3A, 0x02)
-            }
+            }*/
 
             If ((\_SB.PCI0.BR3B.DEVS () != 0x00))
             {
@@ -55927,10 +55929,10 @@
                 {
                     Notify (\_SB.PCI0.BR2D, 0x00)
                 }
-                Case (0x28)
+                /*Case (0x28)
                 {
                     Notify (\_SB.PCI0.BR3A, 0x00)
-                }
+                }*/
                 Case (0x29)
                 {
                     Notify (\_SB.PCI0.BR3B, 0x00)
@@ -56736,11 +56738,11 @@
         }
     }
 
-    Scope (_SB.PCI0.BR3A)
+    /*Scope (_SB.PCI0.BR3A)
     {
         Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
         {
-            If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
+            If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") / * Device Labeling Interface * /))
             {
                 If (((Arg1 == 0x02) && (Arg2 == 0x00)))
                 {
@@ -56765,7 +56767,7 @@
                  0x00                                           
             })
         }
-    }
+    }*/
 
     Scope (_SB.PCI1.QR1A)
     {

 

DSDT_BIOS_3101.zip

Send me Steffens-iMac.zip

DSDT.dsl.patch

Edited by tokia

Share this post


Link to post
Share on other sites
Advertisement

Thank you for your reply!

 

My idea is to use the AMD GPU while leaving the NVIDIA GPU in the computer. This already works but I have to (un)plug displays multiple times per day, every day. Maybe I can edit the first post to make that more clear. :)

Edited by tokia

Share this post


Link to post
Share on other sites
5 minutes ago, tokia said:

Thank you for your reply!

 

My idea is to use the AMD GPU while leaving the NVIDIA GPU in the computer. This already works but I have to (un)plug displays multiple times per day, every day. Maybe I can edit the first post to make that more clear. :)

The only reasons I could see having to unplug displays from the AMD GPU to the Nvidia GPU is if you are booting into something other than macOS Mojave. But I would suggest setting down and really thinking about what your main use case for whatever OS you use is. If you use Windows (for gaming) more than macOS, maybe you should just stick with that OS until all other OSes support your equipment.

 

50 minutes ago, tokia said:

There are no problems if I swap PCI-e slots for the GPUs so that the AMD GPU is in the first slot (primary GPU), but I prefer not to do this.

It shouldn't matter what slot the GPU is in, it depends on what GPU your monitors are connected to. You will not be able to utilize the AMD GPU in macOS while your displays are connected to the Nvidia GPU and vise versa.

Share this post


Link to post
Share on other sites

Thank you for your reply!

 

46 minutes ago, Pavo said:

The only reasons I could see having to unplug displays from the AMD GPU to the Nvidia GPU is if you are booting into something other than macOS Mojave. But I would suggest setting down and really thinking about what your main use case for whatever OS you use is. If you use Windows (for gaming) more than macOS, maybe you should just stick with that OS until all other OSes support your equipment. 

 

I use macOS mainly for work (software development) and everything else except gaming. Windows is mainly also used for everything else including gaming. I cannot do without one or the other. I barely use my MacBook Pro because the performance of the Hackintosh is superior. There is a perceived performance loss in games (Windows) when the NVIDIA GPU is not installed in the PCI-e slot closest to the CPU.

 

I have been sticking with macOS High Sierra 10.13.6 but it seems to be possible to make Mojave work without causing me too much inconvenience considering that I have the hardware I need. :)

 

46 minutes ago, Pavo said:

It shouldn't matter what slot the GPU is in, it depends on what GPU your monitors are connected to. You will not be able to utilize the AMD GPU in macOS while your displays are connected to the Nvidia GPU and vise versa. 

 

I can leave displays connected to both GPUs when the AMD GPU is installed in the first PCI-e slot. I have a signal on the display connected to the AMD GPU but obviously no signal on the displays connected to the NVIDIA GPU.

 

I cannot use any displays connected to the AMD GPU under macOS if the NVIDIA GPU is installed in the first PCI-e slot unless I unplug the displays connected to the NVIDIA GPU.

 

Edited by tokia

Share this post


Link to post
Share on other sites
On 12/17/2018 at 10:44 PM, tokia said:

Hello,

 

My desktop Hackintosh is running macOS Mojave 10.14.2 with two dedicated GPUs installed: NVIDIA GTX 1080 Ti, AMD Radeon HD 7970.

  

The AMD GPU is used primarily under macOS and the NVIDIA one under Windows.

 

macOS boots without issues as long as there are no displays connected to the NVIDIA GPU. If a display is connected then the display connected to the AMD GPU will become blank. The system can be accessed using Screen Sharing/VNC.

 

There are no problems if I swap PCI-e slots for the GPUs so that the AMD GPU is in the first slot (primary GPU), but I prefer not to do this.

 

I have tried to remove the whole PCI (bridge) device in the DSDT file and all the lines that refer to it. The PCI entries in ioreg and System Information are gone but System Information still shows an NVIDIA GPU under Graphics/Display.

 

Many of the suggestions I have found in guides and forum posts do not seem to apply here. My problem with some of the guides and answers is that they give the solution without explaining how anything works, or they tell you what to do without explaining the reasons behind it.

 

What else can I do? Thank you for any assistance you can provide!

 

I have attached some files that may help you help me.

 

DSDT_BIOS_3101.zip contains the original ACPI (*.aml) files without any patches.

Send me Steffens-iMac.zip is a file produced by RunMe.app, and do contain simple patches to rename some devices.

DSDT.dsl.patch is a diff of the original DSDT.dsl file and the one with the PCI devices removed (commented out).

 

Motherboard: ASUS Rampage V Extreme (X99), BIOS version 3101 (macOS does not boot with anything newer).

Clover version: 4644 (macOS does not boot with the latest one, 4798).

 

DSDT.dsl.patch:


--- /Users/sl/Desktop/DSDT_BIOS_3101/DSDT.dsl	2018-12-17 05:24:30.000000000 +0100
+++ /Volumes/EFI/EFI/CLOVER/ACPI/patched/DSDT.dsl	2018-12-17 16:52:08.000000000 +0100
@@ -5,7 +5,7 @@
  * 
  * Disassembling to symbolic ASL+ operators
  *
- * Disassembly of DSDT.aml, Mon Dec 17 05:24:30 2018
+ * Disassembly of DSDT.aml, Mon Dec 17 04:01:52 2018
  *
  * Original Table Header:
  *     Signature        "DSDT"
@@ -2128,7 +2128,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -2274,7 +2274,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -2420,7 +2420,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -2570,7 +2570,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -2803,12 +2803,14 @@
                 If ((CSTA (Arg0, Arg1) == 0x00))
                 {
                     FLAG = 0x00
-                    PRID (APID = 0xFF) = 0xFF
+                    APID = 0xFF
+                    PRID = 0xFF
                 }
                 Else
                 {
                     Local0 = APID
-                    PRID (FLAG = 0x01) = Local0
+                    FLAG = 0x01
+                    PRID = Local0
                 }
 
                 Return (APIC)
@@ -15259,7 +15261,7 @@
                             ^BR2B.OSHP ()
                             ^BR2C.OSHP ()
                             ^BR2D.OSHP ()
-                            ^BR3A.OSHP ()
+                            //^BR3A.OSHP ()
                             ^BR3B.OSHP ()
                             ^BR3C.OSHP ()
                             ^BR3D.OSHP ()
@@ -26861,7 +26863,7 @@
                 }
             }
 
-            Device (BR3A)
+            /*Device (BR3A)
             {
                 Name (_ADR, 0x00030000)  // _ADR: Address
                 OperationRegion (MCTL, SystemMemory, 0xE0013188, 0x04)
@@ -27496,7 +27498,7 @@
                 {
                     Name (_ADR, 0xFFFF)  // _ADR: Address
                 }
-            }
+            }*/
 
             Device (BR3B)
             {
@@ -30267,7 +30269,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -30567,21 +30569,21 @@
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4158,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4158,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0001,             // Length
                     ,, , TypeStatic, DenseTranslation)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x5758,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x5758,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0000,             // Length
                     ,, , TypeStatic, DenseTranslation)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x5858,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x5858,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0000,             // Length
                     ,, , TypeStatic, DenseTranslation)
@@ -37604,7 +37606,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -37904,21 +37906,21 @@
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4558,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4558,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0001,             // Length
                     ,, , TypeStatic, DenseTranslation)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4259,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4259,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0000,             // Length
                     ,, , TypeStatic, DenseTranslation)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4359,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4359,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0000,             // Length
                     ,, , TypeStatic, DenseTranslation)
@@ -44941,7 +44943,7 @@
                             ^^PCI0.BR2B.OSHP ()
                             ^^PCI0.BR2C.OSHP ()
                             ^^PCI0.BR2D.OSHP ()
-                            ^^PCI0.BR3A.OSHP ()
+                            //^^PCI0.BR3A.OSHP ()
                             ^^PCI0.BR3B.OSHP ()
                             ^^PCI0.BR3C.OSHP ()
                             ^^PCI0.BR3D.OSHP ()
@@ -45241,21 +45243,21 @@
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4958,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4958,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0001,             // Length
                     ,, , TypeStatic, DenseTranslation)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4559,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4559,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0000,             // Length
                     ,, , TypeStatic, DenseTranslation)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x4659,             // Range Minimum
-                    0x0000,             // Range Maximum
+                    0x4659,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0000,             // Length
                     ,, , TypeStatic, DenseTranslation)
@@ -53823,7 +53825,7 @@
                 Notify (\_SB.PCI0.BR2D.H007, Local0)
             }
 
-            If ((\_SB.PCI0.BR3A.PMEP == 0x01))
+            /*If ((\_SB.PCI0.BR3A.PMEP == 0x01))
             {
                 Local0 = \_SB.PCI0.BR3A.PMEH (0x05)
             }
@@ -53848,7 +53850,7 @@
                 Notify (\_SB.PCI0.BR3A.H005, Local0)
                 Notify (\_SB.PCI0.BR3A.H006, Local0)
                 Notify (\_SB.PCI0.BR3A.H007, Local0)
-            }
+            }*/
 
             If ((\_SB.PCI0.BR3B.PMEP == 0x01))
             {
@@ -54608,11 +54610,11 @@
                     \_SB.PCI0.BR2D.PMEP = 0x01
                 }
 
-                If ((Local1 == 0x07))
+                /*If ((Local1 == 0x07))
                 {
                     \_SB.PCI0.BR3A.PMES = 0x01
                     \_SB.PCI0.BR3A.PMEP = 0x01
-                }
+                }*/
 
                 If ((Local1 == 0x08))
                 {
@@ -54879,10 +54881,10 @@
                 Notify (\_SB.PCI0.BR2D, 0x02)
             }
 
-            If ((\_SB.PCI0.BR3A.DEVS () != 0x00))
+            /*If ((\_SB.PCI0.BR3A.DEVS () != 0x00))
             {
                 Notify (\_SB.PCI0.BR3A, 0x02)
-            }
+            }*/
 
             If ((\_SB.PCI0.BR3B.DEVS () != 0x00))
             {
@@ -55927,10 +55929,10 @@
                 {
                     Notify (\_SB.PCI0.BR2D, 0x00)
                 }
-                Case (0x28)
+                /*Case (0x28)
                 {
                     Notify (\_SB.PCI0.BR3A, 0x00)
-                }
+                }*/
                 Case (0x29)
                 {
                     Notify (\_SB.PCI0.BR3B, 0x00)
@@ -56736,11 +56738,11 @@
         }
     }
 
-    Scope (_SB.PCI0.BR3A)
+    /*Scope (_SB.PCI0.BR3A)
     {
         Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
         {
-            If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") /* Device Labeling Interface */))
+            If ((Arg0 == ToUUID ("e5c937d0-3553-4d7a-9117-ea4d19c3434d") / * Device Labeling Interface * /))
             {
                 If (((Arg1 == 0x02) && (Arg2 == 0x00)))
                 {
@@ -56765,7 +56767,7 @@
                  0x00                                           
             })
         }
-    }
+    }*/
 
     Scope (_SB.PCI1.QR1A)
     {

 

DSDT_BIOS_3101.zip

Send me Steffens-iMac.zip

DSDT.dsl.patch


put the nvidia gpu on first pcie slot and amd gpu on secondry pcie slot 
make sure you have lilu + whatevergreen kexts in clover 
then boot with -radoff boot flag . 
it will disable amd gpu drivers and let you boot with nvidia gpu .

Share this post


Link to post
Share on other sites
On 12/20/2018 at 1:00 PM, XLNC said:

put the nvidia gpu on first pcie slot and amd gpu on secondry pcie slot 
make sure you have lilu + whatevergreen kexts in clover 
then boot with -radoff boot flag . 
it will disable amd gpu drivers and let you boot with nvidia gpu . 

Thank you for your reply!

 

Do you mean boot Windows with the -radoff boot flag?

Share this post


Link to post
Share on other sites

Hello,

 

I have a double boot with Windows 10 and El Capitan

I am using a GTX 980, the Intel integrated GPU is disabled.

 

Now, I am using Mac OS for everything except gaming, for which I go on Windows.

With recent games, I am tempted to move to a more recent NVIDIA card, but can't because there are no drivers for them on Mac OS.

 

I was wondering: can I have two GPUs, each connected to my screen, and have a setup that allows me to expose only one of them to each system.

This means GTX 2080 on Windows, GTX 980 on Mac OS

Did you succeed? And if so, how?

 

I might then update the GTX 980 to an AMD one to benefit from Metal and update my Mac OS. But that's not what's important to me at the moment.

Share this post


Link to post
Share on other sites
On 11/7/2019 at 11:47 AM, seldo said:

Hello,

 

I have a double boot with Windows 10 and El Capitan

I am using a GTX 980, the Intel integrated GPU is disabled.

 

Now, I am using Mac OS for everything except gaming, for which I go on Windows.

With recent games, I am tempted to move to a more recent NVIDIA card, but can't because there are no drivers for them on Mac OS.

 

I was wondering: can I have two GPUs, each connected to my screen, and have a setup that allows me to expose only one of them to each system.

This means GTX 2080 on Windows, GTX 980 on Mac OS

Did you succeed? And if so, how?

 

I might then update the GTX 980 to an AMD one to benefit from Metal and update my Mac OS. But that's not what's important to me at the moment.

 

 

Nvidia 980 work on mojave??? And catalina?

Share this post


Link to post
Share on other sites
On 11/7/2019 at 6:47 PM, seldo said:

Hello,

 

I have a double boot with Windows 10 and El Capitan

I am using a GTX 980, the Intel integrated GPU is disabled.

 

Now, I am using Mac OS for everything except gaming, for which I go on Windows.

With recent games, I am tempted to move to a more recent NVIDIA card, but can't because there are no drivers for them on Mac OS.

 

I was wondering: can I have two GPUs, each connected to my screen, and have a setup that allows me to expose only one of them to each system.

This means GTX 2080 on Windows, GTX 980 on Mac OS

Did you succeed? And if so, how?

 

I might then update the GTX 980 to an AMD one to benefit from Metal and update my Mac OS. But that's not what's important to me at the moment.

I'm using somewhat similar set-up. RX580 in PCI-e slot 1 and 1070 Ti in slot 2. Both are connected to the same monitor (HDMI for RX580 and DP for 1070 Ti). I use this guide to disable the nVidia card in macOS (method 4). In Windows, I just disable the RX580.

 

The computer boots with RX580 HDMI output and 1070 Ti DP output is treated as the second screen. When I boot into Windows, the RX580 is disabled during boot, so the last image of the Windows 10 loading screen stay in the HDMI output. It causes problem when the screen go to sleep in windows - no signal via DP and the monitor will change to HDMI to display the last boot image. Similar problem for macOS, except that it's a blank screen.

 

I've figured out how to work-around this problem in windows, by re-enable and disable the RX580 after every boot. By doing this, it clears out the HDMI output. However, I haven't figured out how to clear the DP output from macOS.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By verdazil
      This is not intended to be a complete and comprehensive installation guide. There are many installation guides on the forum and installing macOS is no different from installing on other desktop builds. Rather, this is supplemental information specific to the my hardware listed below. I hope you find this information useful and this will save you a little time.
       
      Hardware
      MB: Huananzhi X79-ZD3
      CPU: Intel® Xeon E5-2689, 1.2-3.6 GHz
      Chipset: Sandy Bridge-E Q65 (C600/C200)
      Memory: Samsung 4x8 Gb ECC/REG DDR3, 1866 MHz
      Video: Saphire Nitro+ Radeon RX 590
      Monitor: BENQ-BL2711U + LG TV 42LF650V
      SSD + HDD: NVMe M.2 Samsung 970 EVO 250 Gb + HDD Seagate 2 Tb
      WiFi: Fenvi FV-T919 BCM94360CD
      Mac model: MacPro6,1
      MacOS version tested: Mojave 10.14.6 (18G1012)
       
      What works?
      - Video: 4K x 60Hz on BENQ-BL2711U + Full HD x 60Hz on LG TV 42LF650V
      - Sound: audio jack + HDMI audio on both monitors
      - Wi-Fi (out of the box)
      - USB2 && USB3 ports
      - LAN
      - Bluetooth (out of the box)
       
      What does not work?
      - Sleep mode: not tested / I don't need
       
      BIOS Configuration, what's important:
      Bios Version: 4.6.5.4
      Legacy USB Support: [Enabled]
      XHCI Hand-off: [Enabled]
      EHCI Hand-off: [Enabled]
      USB Mass Storage Driver Support: [Enabled]
      Hyper-threading: [Enabled]
      Active Processor Cores: [All]
      Serial Port: [Disabled]
      Intel(R) VT-d : [Disabled]
      Launch CSM: [Enabled]
      Boot option filter: [UEFI only]
      Launch Storage OpROM policy : [UEFI only]
      Launch Video OpROM policy : [UEFI only]
       
      Here is what I used to install and configure the system:
      FakeSMC: make with Clover Builder https://github.com/Dids/clover-builder/releases Audio: https://github.com/vit9696/AppleALC Video: https://github.com/acidanthera/WhateverGreen/releases USB: https://bitbucket.org/RehabMan/os-x-usb-inject-all/downloads + PMHeart/DalianSky patches LAN: http://www.insanelymac.com/forum/topic/287161-new-driver-for-realtek-rtl8111/ CPU Power management: https://www.insanelymac.com/forum/topic/324270-sandy-bridge-e-ivy-bridge-e-power-management-1013-appstore-release   Clover configuration:
      Clover version: v2.5k r5088
      You can get the configuration file and the necessary kexts from the link at the end of the message
      Note: you must insert your own SeralNumber && MLB && ROM && SmUUID in the config.plist file.
       
      How to use
      To make a bootable flash drive, you can use my EFI directory (link at the end of the message). Tested for Mojave 10.14.6 installation.
      https://drive.google.com/file/d/1tjbwuUWg_PlQCVt5PTRFG6HsNby_BcgN
    • By valueimagery
      Apologies ahead of time if this is in the wrong thread (please move to appropriate thread if necessary) as it applies to pre-installation and post-installation, Mojave and Catalina, motherboards, user preferences, but it's all related and I just had to get all this written down since it's all resolved...
       
      The issues:
      MOJAVE 10.14.6 2019 SECURITY UPDATE
      CATALINA 10.15.1 INSTALLER USB
      POST Mother Board UPDATE ISSUES
      UEFI Bootloader disappearing from BIOS boot menu/setup
      MAPS NOT WORKING/ CORRUPT USER/LIBRARY/CACHE
      GPT HEADER CORRUPTION AT BOOT
       
      This is my system which has worked flawlessly ever since 10.14.1 and automatic updates within the OS.
      10.14.6 iMac 18,3
      ASUS Rog Maximux X Code Bios v 2023
      Sapphire Nitro+ RX 580 Special Edition
      1 NVME System Drive, 1 x 1TB NVME Scratch Disk,  4 Internal 8TB HDD in raid 1+0, 4 x 3TB in a raid 5 setup with enclosure, 1 Backup System SSD, 1 2TB Time machine HDD (get to why I’m listing the drives later)
       
      Instead of making different posts for all of these issues that I’ve spent that past two weeks trying to solve (I almost gave up) I thought for anyone else out there experiencing one or any of the above issues you might find a solution in this thread.
       
      First let me say thanks to all the people out there in the various hackintosh communities (hackintoshers, tonymac, insanelymac, olarila, reddit) I researched every single one to find solutions for all these issues.
       
      Second, invest in Carbon Copy Cloner and make sure you make constant backups of your system drives.  Otherwise there would be no way to troubleshoot.
       
      So this all stemmed from not being able to update to Mojave 10.14.6 2019 Security Update released in November 2019.  
      My original post:
      Link removed:
      https://www.reddit.com/r/hackintosh/comments/e2naku/cant_update_mojave_to_security_update_2019001/
       
      There were plenty of different errors through troubleshooting:
      Kextdstall[1] (240s) ‘AppleACPICPU’
      or
      considerRebuildOfPrelinkedKernel com.apple.nke.webcontentfilter trigger rebuild
      or
      com.apple.xpc.launchd.domain.system
      <error>: Could not read path: path = /Library/LaunchDaemons, error=2: No suchfile or directory
      And
      IOG flags 0x3(0x51)

      IOConsoleUsers” gIOScreenLockState 3, hs 0, bs0, now 0, sm 0x0
      (The last two, still exist, but don’t stall/severely halt boot, and I’m not really sure if it’s an issue that needs to be addressed as I believe I’ve used the correct format of Device Properties to inject my framebuffer as a headless UHD 630 with 0x3E980003)
       
      Then once I managed to get past some of the installer stalls I always ended at “Installer resources were not found” prompting a restart and continuous loop cycle of no successful install.
       
      Then I tried making a bootable Catalina USB and couldn’t even install a fresh copy of 10.15.1 on a separate SSD.  Again getting errors in verbose mode that would stall and go no further.
       
      Then after cloning, and failing, and cloning and failing, changing bios settings, at some points my UEFI bootloader would completely disappear for my Samsung NVME 970 pro system drive.
       
      Was really getting frustrated, but was determined to fix it.  And here they are one by one in the order I Fixed them:
       
      Clover UEFI Bootloader Disapepared from Boot Menu
      So first I figured out what was going on with the UEFI bootloader disappearing.  I tried complete wipes of the APFS drive, Reinstalling Clover on the EFI partition.  Nothing.  Finally Found the solution here thanks to @chibabah
      Link removed:
      Tips:
      1)    If you have lots of connected drives use the Page Up and Page Down key to scroll through results of bcfg boot dump
      2)    Use Disk Utility or Terminal before hand to verify the exact UUID of your EFI system drive that has disappeared.
       
       
      Post Motherboard Update
      Now this seems to apply to a lot of people in the community who have updated and unknowingly couldn’t boot their system, or in my case, couldn’t update the current OS to the latest version.  This seemed to apply to my ASUS Maximus X Code v 2203.
      Thanks @mattystonnie for your ACPI patch found here:
      Link removed:
       
      Can’t Install fresh version of Catalina 10.15.1
      So after almost giving up on not getting the latest Mojave Security update, I wondered if Catalina would have the same issues.  Well it had different issues.
      Stall - Virtual IOReturn ionvmecontroller
      AppleACPICPU stalling
      Requiring EC device
      So I found this reddit thread thanks @dracoflar:
      https://www.reddit.com/r/hackintosh/comments/den28t/whats_new_in_macos_catalina/
       
      And applied the SSDTTime.command create by @corpnewt @noone @rehabman available here:
      https://github.com/corpnewt/SSDTTime
       
      The SSDT-EC.aml file it created from my DSDT.aml was the FINAL KEY in allowing the Catalina Installer to complete.
       
      Tips:
      1)    If you haven’t already created a SSDT before, for example a custom USB SSDT, it is placed in your EFI/Clover/ACPI/Patched/
      2)    In your config.plist under ACPI Check “AutoMerge” so that it is true.  This will automatically load any custom SSDT files from your patched folder.
       
      Apple Maps not loading
      This had been something that I had issues with before, more so with location services not working.  However, after several clones, and a succesful Catalina Install/User Migration, location services was fine, but Maps was a blank grey grid, couldn’t find an address, get directions, load satellite image.   Ended up being a corrupt User Library since other System Users had no issues using the application Maps.
      To fix this I used the following resources:
      https://appletoolbox.com/fix-corrupt-user-accounts-macos/
      1)
      Quit Maps
      Give Terminal Full Disk Access and the type:
      diskutil resetUserPermissions / `id -u`
       
      2)
      Deleting The Entire User Library Cache folder
      ~/Library/Caches
       
      3)
      Delete folder ~/Library/Containers/com.apple.Maps/
       
      4)
      Restart Mac.  All these caches and temporary folders will repopulated themselves and Maps should resume working.  
       
      Installing Mojave 10.14.6 2019 Security Update
      This by far is the craziest of them all.  Whether the above things I implemented to my EFI or config.plist actually played a part or not in it finally working I guess I’ll never know.  But it is finally solved.  Simply by unplugging all drives.  Appears to be an issue with real macs too:
      https://bartechtv.com/macos-could-not-be-installed-on-your-computer-error-when-installing-mojave-on-hackintosh/
      Link removed:
      Didn’t have to go the terminal route as some did in the tonymac thread above.
       
      So since I have A LOT of drives I simply turned off my external enclosure, physically unplugged by 2nd NVME scratch drive, and disabled the SATA connectors in the BIOS.
       
      Low and behold after two restarts the Security update completed without a hitch or stall.
       
      After install I re-enabled/ connected/turned on all my drives, an no issues.  
       
      This must be a Mojave issue as I didn’t need to do this when installing Catalina from a USB installer.
       
      GPT header corruption has been detected
      And lastly for anyone out there with an ASUS Maximus Motherboard that has updated to the latest BIOS.  There seems to be an issue with external drives plugged into the PC (mine is in the back USB C port)  During boot the PC can’t POST and forces user into setup.
       
      I know there is nothing wrong with the GPT partition as I’ve run multiple tests in windows and mac.  And it’s a known issue with other ASUS motherboard users:
      https://rog.asus.com/forum/showthread.php?114955-GPT-header-corruption
       
      Temporary Solution:
      Until a BIOS update addresses this, go to your BIOS settings
      BOOT\Boot Configuration
      And change the Boot Sector (MBR/GPT) Recovery Policy to “Auto Recovery”
       
    • By valueimagery
      Hello,

      Anyone else having issues with the latest security update 2019-001 10.14.6 for Mojave?

      Have never had issues updating since 10.14.2 in the past. But this once gets stuck on these last 4 lines:
      "
      Adding AGDP mode validate property
      iMac.local com.apple.xpc.launchd[1] (org.ntp.sntp.188) <Warning>: Servuce exited with abnormal code: 1
      considerRebuildOfPrelinkedKernel com.apple.nke.webcontentfilter trigger reguild
      Forcing CS_RUNTIME for entitlement: com.apple.rootless.install iMac.Local com.apple.xpc.launchd[1] (com.apple.displaypolicyd.200) <Warning>: Service exited with abnormal code: 1
      "

      The only way to boot is to force shutdown and overide boot from the system volume and bypass the Mac OS Install volume.

      Doing a bit of research from similar issues with users and security updates most boot problems are caused/resolved by fixing:

      Location of Kexts (virtualsmc in Clover's "/kexts/Other/", latest kexts installed with ##### in L/E/ with cache updated by Kext utility)
      The Injection of Kexts (i've tried both detect and inject = yes)
      Mismatched Kext (fakesmc + virtual smc both in use, which they are not)
      A bad config.plist (works booting the normal system voluem, i've attached)
      A graphic injector issue (currently using iMac18,3 + RX580 with the UHD630 in a headless state)
      Multiple Drivers Folder - The old clover /driversuefi64/ folder present and conflicting with the latest /drivers/uefi/ folder (only /drivers/uefi/ present)

      The only thing that is different from this update than previous updates is that I transitioned to VirtualSMC from previously using FAKESMC/ FAKESMCsensors kexts with previous Mojave releases.

      I uninstalled the FAKESMC and all the sensors kexts using terminal and the following command and can confirm they are not present in the Clover "other folder" or the /L/E/ folder.
      sudo rm -rf /Library/Extensions/".....".kext

      After transitiong to VirtualSMC I did read with the readme that the VirtualSmc.efi should be placed in the /drivers/UEFI/ folder in clover. So I have added that to the EFI/CLOVER/DRIVERS/UEFI/ folder manually. Can anyone confirm if this is necessary?

      I've attached my config.plist file and screenshots of the verbose readout stalling as well.

      Any guidance would be great!


      KEXTS I'VE INSTALLED IN /L/E/:
      WhateverGreen.kext
      VirtualSMC.kext
      USBInjectAll.kext
      SMCSuperIO.kext
      SMCProcessor.kext
      Lilu.kext
      IntelMausiEthernet.kext
      BrcmPatchRAM3.kext
      BrcmFirmwareRepo.kext
      BrcmBluetoothInjector.kext
      AppleALC.kext
      AirportBrcmFixup.kext
      configNOSN.plist


    • By tonyx86
      I was inspired by @duduclx post here for installing El Capitan on a Dell Latitude E6410, so I decided to install Mojave 10.14.5 and subsequently 10.14.6.  Everything works perfectly (including sleep).  I'm starting this thread hoping to help others install Mojave on their E6410s.  A brief installation guide is provided later in this first post.  The interested reader is encouraged to read the other posts in this thread to see how this solution evolved and to learn additional tips/details not provided in this first post (including dual-booting with macOS and Windows).
       
      My system is as follows:
      Dell Latitude E6410 (I7-620m, Nvidia 3100M, 8GB DDR3, 512GB SSD, 1440x900 display, BIOS: A17) MacOS: Mojave 10.14.6 (APFS) (Patched with DosDude Mojave Patcher 1.3.3) MacModel: MacBookPro 6,2 (LPCB._DSM.Name "pci8086,3b09") Kexts: Lilu 1.3.6, VoodooHDA 2.9.2, AirportBrcmFixup 2.0.0, IntelMausiEthernet 2.4.1d1, ACPIBatteryManager 1.90.1, BrcmPatchRam2.kext, BrcmFirmwareRepo.kext, VoodooPS2Controller (the "Refined ALPS Touchpad" version - release 6 developed by @Dr. Hurt and compiled by @bronxteck), not the original version), USBInjectAll (with custom SSDT-UIAC), VoodooSDHC.kext (configured as shown here). Wi-Fi: Broadcom BCM 94352HMB (with AirportBrcmFixup.kext) CLOVER (Legacy): R4961  
      Configuration items that may be different from what you have seen in other E6410 configurations
      Addition of _OFF and _ON methods to _PTS and _WAK methods respectively (to control discrete graphics in order to enable sleep/wake) LPCB._DSM patched with device-id "3b09" AND "name", "pci8086,3b09" for native Nehalem power management with MacBookPro 6,2 ECDV renamed to EC so that AppleBusPowerController loads AGP.VID._DSM patched with device-id "0a29" so that AppleGraphicsPowerManagement loads No CLOVER Generate P or Generate C States (with the correct LPCB._DSM and MacBookPro 6,2, these CLOVER options are unnecessary for this architecture and only limit max multiplier and reduce number of P states) DSDT patched to include HDAU device (device-id 0x0be3)  
      What is NOT working:
      Display brightness can be controlled with keyboard keys, but cannot be controlled with slider in Display settings. Graphics Power Management - AGPM loads (because 10de,0a29 device is injected), but there's no evidence that 3100m frequency and voltage is changing.
        What is NOT tested:
      Smartcard Reader eSata (I have this disabled in my BIOS) Firewire Port (it does appear in the Network settings, just haven't tried it) Microphone Jack PC Card Slot (I have this disabled in my BIOS)  
      What IS working:
      SLEEP IS WORKING! Everything else not mentioned above.   Speedstep/CPUPowerManagement is perfect, system temps are low, CPU multiplier operates as expected, battery life is long Shutdown is fast Display/graphics acceleration is perfect (thanks to DosDude's Mojave patcher) Brightness (adjusted with brightness keys on keyboard) works perfectly Battery Manager works (battery status is displayed in menu bar) simply by installing ACPIBatterManager.kext. Wi-Fi (after changing to Broadcom BCM94352HMB and installing AirportBrcmFixup.kext) Audio (volume adjustable, volume indicator appears in menu bar).  Switched to VoodooHDA from AppleALC after AppleALC caused slow boot due to "IOHDACodecFunction timeout." Ethernet port (with IntelMausiEthernet.kext) Broadcom BCM20702A0 Bluetooth (with BrcmPatchRam2.kext and BrcmFirmwareRepo.kext) Optical Drive External VGA (with corrected NVCAP.  Need NVCAP 04000000 00000100 0E000000 00000007 00000000 (credit: here) for working external VGA display. Headphone jack Display Port (tested using DP > HDMI adapter) Camera SD Card Reader  
      Known issues and their solutions (These issues have all been resolved, with the solutions incorporated into the attached config files.  The issues are listed here for historical purposes and no further work is needed unless stated otherwise).
      AAPL,clock-id and device_type do not appear in IORegistry for EHC1.  Solution is to use CLOVER on-the-fly patching/fixing/renaming for EHC1 and EHC2. ALPS trackpad performance is not good with the "standard" VoodooPS2Controller.kext that I initially used.  Switching to the "Refined ALPS TouchPad driver" is a big improvement.  I've implemented and tested this on my system.  The ALPS version of VoodooPS2Controller.kext mixes up a few keys.  Need to switch the Command and Option keys (System Preferences > Keyboard > Modifier Keys) and change keyboard type to ISO European. This configuration (captured in the attached config files) uses an injected device-id (10de,0a29) for NVidia 3100m to get AGPM to load.  While I haven't observed any performance differences, a better approach may be to inject AGPM properties for device 10de,0a6c (the actual device-id for the 3100m).  This AGPM method is discussed later in this thread.  I have briefly tested this "FakeSMC.kext method" for injecting AGPM attributes without any noticeable changes in laptop/graphics behavior. IOHWControl is not loaded under AGPM (Should be AGP > VID > NVDA,Display-A@0 > NVDATesla > AGPM > gpu-control > IOHWControl as viewed in IORegistryExplorer).  It is loaded on a real MacBookPro6,2 running Mojave and is loaded on this Dell Latitude E6410 running High Sierra.  If I "Inject NVidia" via CLOVER, IOHWControl loads properly. The Dell Latitude DSDT (BIOS A17) has a bug in Method (GNOT).  In the method, the expression  If (LOr (LGreater (OSYS, 0x07D0), LLess (OSYS, 0x07D6))) always evaluates to TRUE, so the patched DSDT has no dependency on the value of OSYS.  I suspect that LOr should be replaced with LAnd, so that this expression is TRUE for variants of Windows 2001 and False for any other OS.  While this may have no affect on MacOS, it makes one wonder how such an obvious bug made it through Dell QA and is still present in BIOS A17.  Also makes one wonder whether the sleep problem (which no one has solved) was fixed in Windows to address another DSDT bug. The assigned value of ACOS and OSYS in the DSDT are conditional on the operating system.  There is no condition for "Darwin."  The solution is to add a condition for "Darwin" (making it equivalent to one of the defined operating systems (e.g. Linux, Win7, etc).  The attached config hard-codes ACOS and OSYS values equivalent to those for Linux.  Another way to handle this (different from the method employed in the attached config files) might be to override _OSI with XOSI (defined in a custom SSDT). The portType of the Internal Bluetooth device is portType=0 which, according to Rehabman's comments in SSDT-UIAC-All.dsl, is an external USB 2 port.  This should be an internal USB port (portType=2).  I learned through trial and error that the HUB1 and HUB2 definitions in Rehabman's SSDT-UIAC-ALL.dsl apply to the ports on the EHCx USB hubs.  The solution is to include the HUB1 definition in SSDT-UIAC.dsl and change portType to 2 for HP15.  This change doesn't appear to affect/fix sleep, but it may prevent instant wake if we get sleep working. There are minor differences between a real MacBookPro6,2 IORegistry dump and this HackBookPro6,2 IORegistry dump that can be resolved with simple DSDT edits.  I am now running with these changes, but haven't found these changes to make any difference in operational behavior.
      Rename Device (AC) -> Device (ADP1) Remove UID from Device (HPET) Add compatible ID "PNP0C01" to Device (HPET) Change ADP1:_STA from 0x0F to 0xFFFFFFFF Enable Ambient Light Sensor and renamed to Device (ALS0) from Device (ALS) Add compatible ID "smc-als" to ALS0 Rename LID -> LID0 Change "name" definitions to Buffers in _DSM methods Rename Device (PBTN) to PWRB Rename Device (SBTN) to (SLPB) Change HDAU.hda-gfx from "onboard-1" to "onboard-2" Change GFX0.hda-gfx from "onboard-1" to "onboard-2" Sleep / Wake does not work with the basic DSDT edits.  I have discovered that Sleep / Wake can be made to work by adding discrete graphics _OFF and _ON methods to _PTS and _WAK methods respectively (borrowed the concept and code from a working E6430 DSDT: Credit here: https://osxlatitude.com/forums/topic/9248-working-sleep-on-intel-hd-and-nvidia-nvs-on-dell-latitude-e6430-optimus-enabled-or-disabled/page/6/.  
      Brief Installation Guide:
      Configure BIOS (version A17) as follows (leave default unless listed here): Boot Sequence: USB, Internal HDD, CD/DVD, Modular Bay HDD; Boot List Option: Legacy; Integrated NIC: Enabled; Parallel Port: Disabled; Serial Port: Disabled; SATA Operation: AHCI; Misc Devices: Enable Modular Bay, Camera, External USB, Microphone, Media Card and 1394; Latitude ON Reader: Disabled; Keyboard Illumination: Auto ALS and Input; Ambient Light Sensor: Enabled; OROM Keyboard Access: Disable; TPM Security: Disable; Computrace: Deactivate; CPU XD Support: Enable; Performance: Enable all options; Power Management: Disable Wake on AC, Disable Wake on LAN/WAN, Express Charge: Standard, Charge Behavior: Enabled; Keypad: Fn Key Only; Mouse/Touchpad: Touchpad/PS-2 Mouse; USB Emulation: Enable Legacy; Fn Key Emulation: Disabled; Fastboot: Thorough; Virtualization: Enable Intel Virtualization, Disable VT for Direct I/O, Disable Trusted Execution; Wireless Switch: Bluetooth and WLAN; Wireless Device Enable: Bluetooth and WLAN;  Create your MacOS installer USB (Use DosDude's Mojave Patcher for Mojave) (start with High Sierra and not Mojave if you're new to hackintosh). Install CLOVER (Legacy) on installer USB using attached EFI as your guide for patched ACPI, kexts and config.plist Install MacOS to your SSD.  When you run DosDude's Mojave Patcher, DO NOT install LegacyUSBInjector.kext - you're going to use Rehabman's USBInjectAll.kext.  Also, do not install the DosDude SIP kext (you're using CLOVER to manage SIP). Install the following kexts in /Library/Extensions:  ACPIBatteryManager.kext, AirportBrcmFixup.kext, BrcmFirmwareRepo.kext, BrcmPatchRAM2.kext, FakeSMC.kext, FakeSMC_ACPISensors.kext, FakeSMC_CPUSensors.kext, FakeSMC_GPUSensors.kext, FakeSMC_LPCSensors.kext, IntelMausiEthernet.kext, Lilu.kext, USBInjectAll.kext, VoodooPS2Controller.kext (the "Refined ALPS Touchpad driver," not the original), VoodooSDHC.kext (configured as shown here). Switch Command and Option keys to compensate for Refined ALPS driver issue (System Preferences > Keyboard > Modifier Keys).  Also change keyboard type to ISO European to fix the [ ` ~ ] key (to the left of the "1" (one) key. Install VoodooHDA Install HWMonitor application  
      Tips for Improved Performance (on this and other older systems)
      System Preferences > Spotlight > Search Results: Uncheck all options System Preferences > Spotlight > Privacy: Add all Volumes System Preferences > Accessibility > Display: Check "Reduce motion" System Preferences > Accessibility > Display: Check "Reduce transparency"  
      Other tips
      If your fan is always running and temps are good, try pressing Fn + z After applying Mojave updates, HWMonitor may not display discrete graphics attributes.  On systems with multiple displays, a second (or third display) may not be active after applying the Mojave update.  The solution to this is to run "sudo kextcache -i /" (in a terminal window) and reboot.  This will usually fix the issue.  If the issue is not fixed, run DosDude's Post Install Utility, apply the Legacy Graphics Patch, reboot and then run "sudo kextcache -i /" if necessary.

      E6410.zip
    • By ezyrdr
      hallo hallo!
      I've been here on since snow leopard days, but still, im less than a rookie when it comes to hackintoshing! im just format it, copy it, install it dude-like! ahajajahaa sorry but I've been gettin this arb_buffer not present in my whatevergreen or don't know what OpenGL driver...steam games like Dying Light aren't playable since mojave 14.2 (no video, black screen) and several other opengl apps wont behave correctly at all...soo i only got you people to givme any idea of what am i doin wrong here with my installation, cause i got latest whatevergreen, as you could see from the capture im sending ... maybe i should go for a better video card?? i was thinkin buying a RX 590 8GB from Sapphire would kinda do de trick...but if a got a prob with my installation, most likely not uh!? ahaaja well thats from me for now, hope you guys are havin it this holidays with fam & loved ones, and are safe & witta rockin piece of hackintosh to play around with catalina, which is pretty cool system for me right now!
      HAPPY HOLIDAYS EVERYONE & BE SAFE!!!    ~_^

      ~edit~
      maybe i misconfigured ATI enabling in CloverEditor over the config file?!
×