Austere.J Posted August 26, 2020 Share Posted August 26, 2020 (edited) This post is targeted at users who have an Ice Lake-based laptop. - Major Updates on Sep 5: Both fixes have been integrated into WhateverGreen and will be available as of v1.4.2, so public tests are now over and thanks for your participation. I have renamed this post, so feel free to use it as a general discussion thread. ----------------------------------------------------------------------------------------------- Mobile Ice Lake processors can be classified by their integrated graphics card into three categories, G1, G4, and G7. You could find information about your processor in the following table. Note that Apple uses NG* processors on genuine Macs. Even though device IDs of UHD Graphics on G1 series processors are not listed in Info.plist, the driver itself does support the hardware. As a result, you need to spoof the device ID (e.g. 0x8A5A) to make UHD Graphics work with full acceleration. As far as I know, there are two major issues one might encounter while trying to make the integrated graphics card work on macOS Catalina. 1) The kernel panic due to an unsupported CD clock decimal frequency can be resolved by adding the boot argument `-igfxcdc`. panic: "[IGFB][PANIC][DISPLAY ] " "Unsupported CD clock decimal frequency 0x158\n" @/Library/Caches/com.apple.xbs/Sources/GPUDriversIntel/GPUDriversIntel-14.7.8/IONDRV/ICLLP/AppleIntelFramebuffer/AppleIntelClocks.cpp:348 2) The kernel panic due to an unsupported ICL SKU is related to DVMT pre-allocated memory. You might find something similar to the following lines right above the kernel panic message. [IGPU] HWCAPS - GPU Sku: 0 [IGPU] HWCAPS - VEDBOXEnableFuses:0xf00ff VEBox units enabled: 4 VDBox units enabled:8 [IGPU] HWCAPS - NumSlices: 0 SlicesCountFuse:0x0 [IGPU] HWCAPS - NumSubSlices:32 SubSliceCountFuse:0x0 [IGPU] HWCAPS - MaxEUPerSubSlice:8 EUDisableFuses:0x0 ExecutionUnitCount:256 [IGPU] ERROR: Unsupported ICL Sku! You could resolve this issue by changing the DVMT pre-allocated memory to 64MB or above in your BIOS. If your BIOS does not provide such options, you could try EFI Shell (setup_var) or RU.EFI to modify BIOS settings. If your laptop uses a custom UEFI firmware or has a strict BIOS protection, you should add the boot argument `-igfxdvmt` to solve the problem. Once you have applied above fixes, you should be able to boot into desktop with full graphics acceleration. If you get stuck in `gIOConsoleUser`, you should try different `ig-platform-id`s and make sure that you have enabled other necessary fixes, for example the Core Display patch (`-cdfon`) for built-in 4K display. You need to compile the latest WhateverGreen from the upstream repo (https://github.com/acidanthera/WhateverGreen) until Acidanthera officially releases v1.4.2. ----------------------------------------------------------------------------------------------- 3) Apple has removed the assertion of DVMT stolen memory from the framebuffer driver on ICL platforms, but you are strongly encouraged to patch the framebuffer properly to get rid of the insufficient stolen memory error. You could find the following line in your kernel log. kernel: (AppleIntelICLLPGraphicsFramebuffer) [IGFB][ERROR][DISPLAY ] Insufficient stolen memory You should adjust the size of framebuffer and cursor memory, so that the total amount of required stolen memory is less than the one pre-allocated by BIOS. This might also fix the distorted image around the mouse cursor. - FireWolf Edited September 5, 2020 by Austere.J 7 Link to comment Share on other sites More sharing options...
ccx4700 Posted August 26, 2020 Share Posted August 26, 2020 Much appreciated for your contribution to Ice Lake Hackintosh. Unfortunately I still got kernel panic, but there was progress. iGPU was recognized as GT2. [IGPU] HWCAPS - GPU Sku: ICL GT2 LP This guy said CFG Lock disabled and set DVMT prealloc to 64MB is needed, it might be related to a kernel panic.https://github.com/frozenzero123/YOGA-S740/blob/master/README-EN.md My GPD WIN Max UEFI settings are locked, so I can't change CFG Lock and DVMT settings in BIOS nor setup_var command. stolenmem and fbmem patch did not change the result. CPU: Core i5-1035G7 (GPD WIN Max) OS: 10.15.6 (19G2021) OpenCore: 0.6.0 Lilu: 1.4.7-DEBUG (b8eb26f) from https://dortania.github.io/builds/?viewall=true&product=Lilu smbios: MacBookAir9,1 ig-platform-id: 8A520000 panic.txt Link to comment Share on other sites More sharing options...
Austere.J Posted August 27, 2020 Author Share Posted August 27, 2020 @ccx4700 I received several kernel reports like this, and it seems that all of you have DVMT preallocated memory less than 64 MB set in BIOS. Link to comment Share on other sites More sharing options...
ccx4700 Posted August 27, 2020 Share Posted August 27, 2020 @Austere.J Thanks. I managed to change DVMT prealloc and CFG Lock by BIOS modding. Kernel panic disappeared, but it still hangs at gIOScreenLockState 3 with or without -igfxsku option. Link to comment Share on other sites More sharing options...
Austere.J Posted August 28, 2020 Author Share Posted August 28, 2020 @ccx4700 Apparently the SKU problem is resolved after you have changed the DVMT settings. Now you need to try different ig-platform-id to boot into the desktop. Link to comment Share on other sites More sharing options...
Austere.J Posted August 28, 2020 Author Share Posted August 28, 2020 (edited) Short Summary: So far, it seems that the kernel panic of an unsupported ICL SKU is resolved if one could change its DVMT settings to 64MB or above. Some laptops have DVMT set to 60 MB instead, such as Surface Pro 7, and one is able to get rid of the unsupported SKU error by adding the -igfxsku boot argument but will then encounter another kernel panic. However, I have some good news to share. @Hervé It turns out that the graphics driver itself supports the UHD graphics on G1 series processors even though the device ID 0x80868A56 is not list in both kexts. One of my friends managed to make his UHD graphics card on i5-1035G1 work on macOS Catalina with full graphics acceleration. The device ID is spoofed as 0x80868A5A (i.e. the one on G4 processors), and the ig-platform-id is set to 8A5A0000. Here is a screenshot as a proof. Edited August 28, 2020 by Austere.J 1 1 Link to comment Share on other sites More sharing options...
eriksax Posted August 28, 2020 Share Posted August 28, 2020 (edited) What a good news! My laptop has the same processor (i5 1035g1). i just cant wait for it! Thanks for share Edited August 28, 2020 by eriksax Link to comment Share on other sites More sharing options...
ccx4700 Posted August 28, 2020 Share Posted August 28, 2020 @Austere.J I tried all Ice Lake device id and platform id listed in here, but no luck... https://github.com/acidanthera/WhateverGreen/blob/master/Manual/FAQ.IntelHD.en.md Link to comment Share on other sites More sharing options...
willyboyshy Posted August 28, 2020 Share Posted August 28, 2020 Hello, @ccx4700 maybe you can try this configuration , my CPU is i5-1035G1, faked as G4 good luck Link to comment Share on other sites More sharing options...
willyboyshy Posted August 28, 2020 Share Posted August 28, 2020 Yes, I am the friend of @Austere.J who successfully drives G1, and the picture above is my configuration 1 Link to comment Share on other sites More sharing options...
muhydeen Posted August 29, 2020 Share Posted August 29, 2020 Can you please share your EFI? I also have a i5-1035g1 with UHD Graphics but I have not been successful with Graphics Acceleration. Link to comment Share on other sites More sharing options...
ccx4700 Posted August 29, 2020 Share Posted August 29, 2020 @willyboyshy Thanks for the advice. I entered all properties you specified, but nothing changed. It can boot with -igfxvesa argument, but of course there is no acceleration. Link to comment Share on other sites More sharing options...
Austere.J Posted August 30, 2020 Author Share Posted August 30, 2020 Update: DVMT issue has been resolved. Even though the DVMT value cannot be modified via EFI shell (setup_var) or RU.EFI, one is able to get graphics card work on Surface Pro 7 under macOS Catalina 10.15.6. 3 Link to comment Share on other sites More sharing options...
muhydeen Posted August 30, 2020 Share Posted August 30, 2020 How? Can you shed more light on this? Probably share your EFI if you dont mind. Link to comment Share on other sites More sharing options...
Ab2774 Posted August 30, 2020 Share Posted August 30, 2020 @Austere.J That's good! I've been struggling to get my laptop with i3-1005G1 to work and I cant unlock DVMT, can you please give us more information on how it can be done? Link to comment Share on other sites More sharing options...
Austere.J Posted August 30, 2020 Author Share Posted August 30, 2020 I am busy with integrating the patch into WhateverGreen, so stay tuned and I appreciate your patience. : ) 1 Link to comment Share on other sites More sharing options...
ccx4700 Posted August 30, 2020 Share Posted August 30, 2020 My problem is partially solved. iGPU works with an external display, and internal one is not recognized. No device properties needed at this time. Maybe I have to fix device properties or edid settings, but I think it is not Ice Lake related problems, rather this laptop specific. Thanks. Link to comment Share on other sites More sharing options...
LireMei Posted August 30, 2020 Share Posted August 30, 2020 @Austere.J Please, can you share your EFI folder? I have a 1035G1 Lenovo YOGA S740 and I'm currently trying to get the iGPU to work following what you did as well as what Austere.J did. I already managed to get past the installer. Link to comment Share on other sites More sharing options...
LireMei Posted August 30, 2020 Share Posted August 30, 2020 What I got so far: I installed Catalina 10.15.6 on my Lenovo S740 14inch (i5-1035G1) with the EFI below: https://files.catbox.moe/pcxmxy.zip Graphics and brightness adjustment don't work. This EFI I used for installing the system is using a MacBook Pro 16,2 SMBios. When I tried using a MacbookAir9,1 SMBios + both Lilu and Austere.J's O WhateverGreen kext + .asl patches + adding willyboyshy's device properties for the igpu in order to try and fake a G4 iGPU, I got the kernel panic in the picture attached. Link to comment Share on other sites More sharing options...
Pasqui Posted August 31, 2020 Share Posted August 31, 2020 He said earlier that he still working to integrate the patch. so stay tuned and be patient :) Link to comment Share on other sites More sharing options...
Austere.J Posted August 31, 2020 Author Share Posted August 31, 2020 Summary: The kernel panic of "Unsupported ICL SKU" and the further page fault in `IGAccelTask::withOptions()` after SKU is fixed are indeed caused by the DVMT pre-allocated memory set to 60M (or any other values that are not a multiple of 32MB) in BIOS. If you are not able to modify your BIOS settings via EFI shell or RU.EFI, you need the `-igfxdvmt` boot argument to enable the fix. Please note that the boot argument `-igfxsku` has been removed. You could find the source code at my repo. (https://github.com/0xFireWolf/WhateverGreen) Refer to the manual for details. I have also submitted a PR to the upstream repo, and I am waiting for it to be merged. (https://github.com/acidanthera/WhateverGreen/pull/64) 1 1 Link to comment Share on other sites More sharing options...
Ab2774 Posted August 31, 2020 Share Posted August 31, 2020 Hi, I really appreciate your help and collaboration, my IGPU is now working without unlocking DVMT to 64M or higher and even on Big Sur!! for all of. you whose struggling, set AAPL,ig-platform-id to 0000528A, and add -igfxdvmt boot arg or add enable-dvmt-calc-fix property under AAPL,ig-platform-id in DeviceProperties. getting macOS running on Ice Lake in a pretty early stage reminds me of the old Hackintosh age. Cheers WhateverGreen-1.4.2-DEBUG.zip Link to comment Share on other sites More sharing options...
Paolo7297 Posted August 31, 2020 Share Posted August 31, 2020 @LireMei, I think you should build the Whatevergreen kext manually, your KP is solved with this commit : https://github.com/acidanthera/WhateverGreen/commit/6319f826f7c4c0c2f9b8097cea847ad5265e8946 If you don't want to rebuild yourself, you can use the kext build from @Ab2774 and it should work EDIT: @Austere.J do you know something about glitches during boot and inability to wake up or it's only my problem? Link to comment Share on other sites More sharing options...
Pasqui Posted August 31, 2020 Share Posted August 31, 2020 @Ab2774, Thank you for sharing the latest build kext. IGPU is working now but still having problems like cursor looks broken and internal screen detected as an external monitor Link to comment Share on other sites More sharing options...
LireMei Posted August 31, 2020 Share Posted August 31, 2020 @Ab2774, Is enable-dvmt-calc-fix a boolean? Also, can you please share your EFI folder? I tried setting the AAPL,ig-platform-id to 0000528A, and adding -igfxdvmt boot arg but I still got a unsupported ICL SKU kernel panic... Here is my current EFI folder: https://files.catbox.moe/kfwe1d.zip Link to comment Share on other sites More sharing options...
Recommended Posts