dortania / dortania/bugtracker
GPU issues (and possible workarounds) in Dortania guides
- Dominant language
- No language data
- Stars
- 123
- Forks
- 8
- PR merge metrics
- No merged PRs in 30d
Description
I've recently built a few Hackintoshes, so I found a few issues related to GPUs in Dortania guides. I think they should be mentioned (along with workarounds), but I want to hear your opinion first. If these proposals are approved by maintainers and the community, I will happily prepare a pull request.
1. No video out on UHD 630 paired with Z590 chipset
The problem is, that a combination of a 10th generation "Comet Lake" Intel Core processor (such as i7-10700K, which is pefectly supported and shipped in a real Mac) and 500-series motherboard (designed for 11th-gen "Rocket Lake", but compatible with 10th, such as Z590) will result in no signal on video outputs. The IGPU is correctly recognized by macOS and can be used for IQSV, but framebuffer outputs won't work.
This is probably related to chipset design, because I remember that also Linux i915 driver initially had same problems with this combo. I tried Fedora 33 or 34, it didn't work, a few months later I tried 35 and this worked - so the change was somewhere between 5.8 to 5.15 kernel. This is definitely worth investigating (which I wanna do in free time - compare i915 kernel source in given timeframe), but the eventual fix will be a part of Acidanthera project. When I gather necessary evidence, I will certainly share it and create an issue in appropriate project :)
What we can do here, is to mention in guides ([Install Guide](https://dortania.github.io/OpenCore-Install-Guide/) - [Hardware Limitations/GPU Support](https://dortania.github.io/OpenCore-Install-Guide/macos-limits.html#gpu-support) & [Comet Lake](https://dortania.github.io/OpenCore-Install-Guide/config.plist/comet-lake.html#deviceproperties) sections, [GPU Buyers Guide](https://dortania.github.io/GPU-Buyers-Guide/modern-gpus/intel-gpu.html#kaby-lake-refresh-coffee-lake-comet-lake-8xxx-9xxx), [Anti Buyers Guide](https://dortania.github.io/Anti-Hackintosh-Buyers-Guide/)) that using UHD 630 on Z590 for driving a display is currently unsupported, and chances are, that will never be.
2. Hardware Encoder/Decoder does not work with empty framebuffer (at least on UHD 630 with Z590 and latest Monterey), but works otherwise
This is an actual issue and I don't understand why it's happening nor why my workaround works - but it works. Actually, it's not 100% mine, I found this advice *somewhere* on the Internet and I don't saved the source - but the fix is simple enough to include it.
The point is, that if you use ``0300C89B`` or any other empty framebuffer on UHD 630 (at least on my Z590, OS: latest Monterey), VDADecoderChecker will tell you that Hardware acceleration is unsupported and VideoProc Converter will clarify that hardware H264 encoder and decoder is unsupported on your system. Suprisingly, HEVC decoder works flawlessly, for sure on the IGPU because my Radeon HD 7770 doesn't even support HEVC. Anyway, it should use IGPU because my SMBIOS is ``iMac20,1``. No AppleGVA overrides work here, but swapping the ig-platfom-id for anything with connectors (I use ``07009B3E``) fixed the problem, and now both VDADecoderChecker and VideoProc shows me that hardware acceleration is supported for any type of media.
I propose adding a note to [Fixing DRM section](https://dortania.github.io/OpenCore-Post-Install/universal/drm.html#testing-hardware-acceleration-and-decoding) in [Post-Install](https://dortania.github.io/OpenCore-Post-Install/#how-to-follow-this-guide), [Comet Lake section](https://dortania.github.io/OpenCore-Install-Guide/config.plist/comet-lake.html#deviceproperties) and [Hardware Limitations/GPU Support](https://dortania.github.io/OpenCore-Install-Guide/macos-limits.html#gpu-support) in [Install Guide](https://dortania.github.io/OpenCore-Install-Guide/) and [GPU Buyers Guide](https://dortania.github.io/GPU-Buyers-Guide/modern-gpus/intel-gpu.html#kaby-lake-refresh-coffee-lake-comet-lake-8xxx-9xxx) that using hardware decoder/encoder on UHD 630 *may* require setting framebuffer to something connectorful.
3. radpg=15 boot arg for Radeon HD 7xxx series
[GPU Buyers Guide](https://dortania.github.io/GPU-Buyers-Guide/) says (in both [Modern AMD GPUs](https://dortania.github.io/GPU-Buyers-Guide/modern-gpus/amd-gpu.html) and [AMD Boot Flags](https://dortania.github.io/GPU-Buyers-Guide/misc/bootflag.html) sections) that ``radpg=15`` boot argument is required for proper initialization of Radeon HD 7xxx series graphics cards. This is indeed true, but no real explaination is given what it does. The answer is in [WhateverGreen Radeon manual](https://github.com/acidanthera/WhateverGreen/blob/master/Manual/FAQ.Radeon.en.md), which says that it disables certain power-gating features in the GPU driver. But it also specifies, that the boot argument can be replaced with Device Properties, and this is much better because it allows to fine-tune every setting for every GPU separately. For instance, my Gigabyte's Radeon HD 7770 1GB requires only CAIL_DisableGfxCGPowerGating enabled, an equivalent of ``radpg=1`` to function properly. I think keeping boot-args clean, sticking as close as we can to the original kext, and not disabling any power saving features without a necessity are all valuable things.
Therefore, I'd change mentioned sections from simple "enable radpg=15 and be happy" to "start with \, and then try to remove as much as you can".
#### End
Thanks for your time spend on reading this. I hope my proposals will be considered useful for the project. I've put all of them in one issue because I didn't want to spam on bugtracker, and after all I want to implement this by myself.
Please comment with any suggestions, and if feedback from you will be positive, I will start working on it asap :)
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.