Jump to content
  • ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By tokia
      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
    • By arsradu
      Hi guys,
       
      So, this little tutorial is meant to help people fix a new issue with Mojave: opening jpg files (looks like it happens with larger files, not so much with smaller ones) using Quick Look (on spacebar key pressed) or Preview app using the dedicated GPUs.
      The issue is that, when trying to open jpg files (for some reason, it doesn't occur with pngs), the pop-up window would remain in an endless loop. And from that point forward, any other app trying to open the same file, will either become unresponsive (in the case of the Preview app) or just stay in endless loop (in case of Quick Look)
       
      As a workaround, in case the tutorial below doesn't work for you, you can use Grab (built-in app in MacOS) to open said files.
       
      This issues DOES NOT occur using the iGPU. So...if you're comfortable using the iGPU, just switch to that and you should be good to go. You don't need this tutorial.
       
      This tutorial is based on @Cyberdevs' research and testing on this topic (especially useful if you're using an RX series AMD video card), and my own very limited time testing this on my rig. I just thought it would be useful to create a new thread for it so that people can discuss this particular issue here.

       
      With that being said, I'll just move on to the actual tutorial.
       
      New (probably better) method.
       
      Switch your SMBIOS in Clover config in regards to the dedicated GPU you're using, instead of the CPU. Take a look here and choose the corresponding SMBIOS closest to your hardware.
      Yeah, that's it.
       
      In case you lose CPU PM with this method, there are multiple ways to fix that, and they do not make the object of this thread.  It worked perfectly fine for me though and I didn't need to change anything else.
       
      Alternatively, you can also try one of the MacPro SMBIOSes, such as MacPro5,1 or MacPro6,1. It was tested multiple times and it showed good results. 
      Keep in mind that choosing these will most likely not display you an iGPU in System Report, since those machines generally (probably all of them) use Xeon CPUs with no iGPUs either.
       
      A simple Lilu plugin
       
      Thanks to vulgo for the plugin and @Matgen84 for sharing and testing it, we now have yet another possible solution to this issue. It's a Lilu plugin (which means that it requires Lilu.kext in order to work) it's called NoVPAJpeg, and it can be downloaded from here.
      You use it as a regular kext, alongside Lilu. I prefer (and recommend) using it within the EFI folder, in Clover/kexts/Other. But if you want to use it in S/L/E, that should work just fine.
       
      More info can be found in this post here.
       
      In case you wanna try alternative medicine  ...
       
      The main thing we need to do is actually very simple: we need to enable the iGPU (integrated GPU) by default, in BIOS, while actually being connected to the dedicated GPU.
       
      For ATI GPUs (curtesy of @Cyberdevs' post here).
       
      The discreet GPU should be set as primary in BIOS and your displays should be connected to your discreet GPU
      The iGD/iGPU/iGFX must be enabled in BIOS/UEFI as the secondary GPU.
       
      I removed the DSDT Reconfigured the config.plist to and removed some flags which weren't needed because of the DSDT added the InjectATI + Ornioco Framebuffer (I removed the Orinoco framebuffer because of some weird glitches but it might be useful for other AMD GPUs if you inject the correct framebuffer according to your GPU. No need to inject anything for nVidia GPUs unless your GPU needs it) Added the InjectIntel + ig-platform-id for my intel HD530 (for intel HD 530 I use the 0x19120001 ig-platform-id)  
      Steps 5 to 7 might not be necessary I just did them anyway, if anyone succeeded to get quicklook working without those steps let me know so I can exclude those steps.

           Also confirmed to work with AMD R9 270X on a SandyBridge rig (without an iGPU) using WhateverGreen + Lilu kexts, which also helped to solve the transparency issue along with the Quick Look problem, it also resolved the buggy Screen Capture (Command+Shift+5) issue as well. 
       
          Also, do:
      nvram cleanup kextcache & prelinked kernel rebuild reboot  More info on that here.
       
       
      For NVIDIA GPUs
       
      This is what I needed for my NVIDIA rig and the MSI motherboard in the signature. Your milage may vary, depending on your hardware. But, the idea should be the same regardless.
       
         For MSi motherboads (check out my motherboard details in the signature)
       
      Set your BIOS to use PEG (dedicated GPU) so you can boot.
      Since you're reading this, chances are that you're already connected to the dedicated GPU and the BIOS is set to PEG. So just go into BIOS and see if you're using the iGPU or the dedicated (PEG) graphics device by default.
      If you're already using this, skip to Step 3 (the part AFTER Reboot). Reboot (I think you don't necessarily need to boot into the OS...but you do need to reboot at least until Clover UI) Reboot back into BIOS and set it from PEG to IGD (integrated graphics) WITHOUT removing the cable. Save Reboot again.  
         The result should be that the OS is tricked into thinking you're booting with the IGPU when in fact you're using the dedicated GPU.
       
         For Gigabyte motherboards
       
         Set:
      Peripherals -> Initial Display Output -> iGFX Chipset -> Internal Graphics -> Enabled
           DVMT Pre-Allocation -> default 64M.
           DVMT Total Gfx Mem -> default 256M Save Reboot  
         You should do this with the cable connected to the dedicated GPU.
       
      You will also need to patch the iGPU from Clover config.
      1. Graphics -> Inject Intel (UNCHECK Inject Nvidia or ATI if it's checked).
      2. ig-platform-id (in my case for Intel HD 4600 Desktop) it was: 0x0d220003
       
      And use IntelGraphicsFixup.kext (now included into WhateverGreen.kext) in Clover/kexts/Other. In my particular case, without the kext, I would get freezes in Safari.
       
      Another way to activate the iGPU while having the dGPU set as primary is by going into BIOS/SAG/Graphics Configuration/iGPU and setting Multi-Monitor to [Enabled], all the rest remains on [Auto], and set Inject/Intel to [True] in Clover config.*.
       
      Thanks to @gjw for the tip.
       
      *Motherboard dependent. But the multi-monitor option might be the same regardless of manufacturer.
       
       
      This might be a bug with Mojave and it could be fixed by Apple in the future. but in the meantime, feel free to use this if it helps you fix the issue.
       
      For HP motherboards (including laptops), so far no solution, unless the BIOS somehow allows to switch from eGPU to iGPU and vice-versa.
       
      Cheers!
×