I used AMD RX560 in Sierra, but it is very unstable. usually gpu crash or window server crash occurred.
so now I attached nvidea Quadro FX1700 to my Sierra. I know FX1700 works well in High Sierra, but I haven't tried it in Mojave yet.
FX1700 works well without any additional kext, even nvidia web driver.
I plan to buy a nividia card. I would like to know if a nvidia card, especially kepler, maxwell, pascal, works without web driver.
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.
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.
kextcache & prelinked kernel rebuild
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.
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
Peripherals -> Initial Display Output -> iGFX
Chipset -> Internal Graphics -> Enabled DVMT Pre-Allocation -> default 64M. DVMT Total Gfx Mem -> default 256M
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.
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.
Base on ASentientBot's great job.
If you want to use latest version kexts all from 10.13.6, you can patch it by yourself.
Old Method : GeforceTesla.kext from post#2125.
or perl patch code.
perl -pi -e 's|\x55\x48\x89\xe5\x53\x50\x48\x89\xfb\x83\xbb\x38\x03\x00\x00\x00\x74\x26\x48\x8b\x03\x48\x8b\xb3\xe8\x00\x00\x00\x48\x89\xdf\xff\x90\xc8\x05\x00\x00\x48\x8b\x03\x48\x8b\xb3\xe8\x00\x00\x00\x48\x89\xdf\xff\x90\x78\x06\x00\x00\x31\xc0\x48\x83\xc4\x08\x5b\x5d|\x66\x66\x66\x66\x66\x66\x2e\x0f\x1f\x84\x00\x00\x00\x00\x00\x66\x66\x66\x66\x66\x66\x2e\x0f\x1f\x84\x00\x00\x00\x00\x00\x66\x66\x66\x66\x66\x66\x2e\x0f\x1f\x84\x00\x00\x00\x00\x00\x66\x66\x66\x66\x66\x66\x2e\x0f\x1f\x84\x00\x00\x00\x00\x00\x0f\x1f\x40\x00|g' GeForceTesla.kext/Contents/MacOS/GeForceTesla
New Method : GeforceTesla.kext from post#2529 .
or perl patch code.
perl -pi -e 's|\x48\x8b\x07\xff\x90\xc0\x00\x00\x00|\x48\x8b\x07\x66\x0f\x1f\x44\x00\x00|g' GeForceTesla.kext/Contents/MacOS/GeForceTesla
the patch code is the same as ASentientBot provided 10.13.4 patched GeforceTesla.kext.
You need only one method between Old Method and New Method, each of them works fine here.
10.13.6 kexts works fine as below,
GeForceTesla.kext ..... (patched)
You can try to use NDRVShim.kext instead of replacing IONDRVSupport and IOGraphicsFamily post#1875, get NDRVShim.kext from post#1865, at /Volumes/macOS Mojave Patcher/macOS Mojave Patcher.app/Contents/Resources/macOS Post Install.app/Contents/Resources/legacynvidia/NDRVShim.kext
And need to edit NVDAResmanTesla.kext/Contents/Info.plist to add the following string.
10.13.6 kexts works fine as below,
GeForceTesla.kext ..... (patched)
NVDAResmanTesla.kext ..... (edit Info.plist)
NDRVShim.kext ..... (added)
If you still have troube, try the following 10.13.6 kexts too.
Refer to /Volumes/macOS Mojave Patcher/macOS Mojave Patcher.app/Contents/Resources/macOS Post Install.app/Contents/Resources/legacyGPUPatch.sh
credits to: ASentientBot, parrotgeek1, dosdude1.
And My nVidia 9300GE always need to fix reboot error with NVDAStartup.kext.310.42.25f01.zip from nawcom since 10.12.
Download all the patche kexts here. All works fine here too.
It's better to use Kext Utility.app to install kexts.
I was able to install macOS Sierra 10.12.6 a few months ago successfully with working audio, internet, etc.
But now I want to upgrade to High Sierra and am not sure whether or not it will be compatible with my system. (Tried to do it using a High Sierra USB. Wouldn't boot into installer, showed "+++++++++++++" or something.)
My specs are:
Dell Optiplex 3010
Intel Core i3-3240 @ 3.40GHz (HD2500 Integrated Graphics)
4GB of RAM
NVIDIA Quadro FX1800 (Want to use this GPU, have an extra Radeon HD7470 somewhere that I can also use in this if needed)
Conexant CX20641 Audio
Realtek RTL8111E Ethernet
So, can I upgrade to High Sierra? Please let me know.
EDIT: I kept getting this error: (See attached image)