SavageAUS Posted February 15, 2021 Share Posted February 15, 2021 I'm not familiar with that bootflag. Where's it documented and what does it do? Also, what chipset and CPU in your system? Are you referring to your W.I.P. Laptop with i710510u? EDIT: For others wondering about -igfxblr boot flag, I found it documented here as a WhateverGreen v1.4.6 addition. Not sure why this didn't appear in my original search.Luckily that boot flag did help on my laptop. Big SurClover 5130Latest WEG & Lilu Solved black screen on boot to macOS. Doesn’t happen with earlier versions of wegIntel HD 630. Not sure what has changed in WEG to cause black screens when it was working perfectly before. Now have to use a boot flag to regain the same functionality as previous versions without a boot flag. Sent from my iPhone using Tapatalk Link to comment Share on other sites More sharing options...
deeveedee Posted June 9, 2021 Share Posted June 9, 2021 Does anyone know the difference between a "mobile" framebuffer and a "desktop" framebuffer? Details below... When I first starting hacking my rig here, framebuffer patching guides warned against using video adapters (I was attempting to use DP->DVI adapters). Using a brute-force, trial and error patching methodology here, I got lucky and determined that I could enable DP->DVI adapters with UHD 630 framebuffer 0x3e920000 and framebuffer patches that changed busID, index, type and flags (framebuffer 0x3e9b0007 would not work). Now that I know enough about framebuffer patching to be dangerous, I'd like to figure out why one framebuffer works but the other does not (even if I apply patches to change busIDs, types, flags, indices..., framebuffer 0x3e9b0007 will not work with DP->DVI adapters on my rig). The major difference that I see between the two framebuffers (defined here) is that 0x3e9b0007 (the non-working framebuffer) is "desktop" and 0x3e920000 (the working framebuffer) is "mobile." Does anyone know the logical difference (including byte sequence in AppleIntelCFLGraphicsFramebuffer) between "mobile" and "desktop" framebuffers? Link to comment Share on other sites More sharing options...
headkaze Posted June 10, 2021 Author Share Posted June 10, 2021 (edited) 22 hours ago, tonyx86 said: Does anyone know the logical difference (including byte sequence in AppleIntelCFLGraphicsFramebuffer) between "mobile" and "desktop" framebuffers? There's a dump of the binary data in Coffee Lake.bin You can use the 010 Editor along with IntelFramebuffer.bt to decode the data. EDIT: I just noticed that FAQ.IntelHD.en.md contains the above output (Click "Spoiler: CFL/CML connectors" to expand) which also has the raw hex dump. Edited June 10, 2021 by headkaze 2 1 Link to comment Share on other sites More sharing options...
deeveedee Posted June 10, 2021 Share Posted June 10, 2021 (edited) 6 hours ago, headkaze said: EDIT: I just noticed that FAQ.IntelHD.en.md contains the above output (Click "Spoiler: CFL/CML connectors" to expand) which also has the raw hex dump. Thank you very much for your quick reply! I know how busy you are, so it means a lot. I gathered virtually all of my framebuffer patching knowledge from a couple of threads where you contributed (including this one) and the IntelHD FAQ. The IntelHD FAQ indicates which framebuffers are "mobile" and which are "desktop," but I don't believe it provides the hex dump that shows how they are logically distinguished in Coffee Lake.bin. Maybe the "mobile" or "desktop" bit is part of the Framebuffer ID or maybe part of the Framebuffer Flags? I should be able to figure it out from these other links you provided. Thanks again! EDIT: it appears that IntelFramebuffer.bt is used to generate the connector spoilers in the IntelHD FAQs. Sorry I was a little slow in understanding your reply, since that's clearly what you meant in your updated comment. Thanks again. 6 hours ago, headkaze said: There's a dump of the binary data in Coffee Lake.bin You can use the 010 Editor along with IntelFramebuffer.bt to decode the data. ID: 3E920000, STOLEN: 57 MB, FBMEM: 0 bytes, VRAM: 1536 MB, Flags: 0x0000130B TOTAL STOLEN: 58 MB, TOTAL CURSOR: 1 MB (1572864 bytes), MAX STOLEN: 172 MB, MAX OVERALL: 173 MB (181940224 bytes) Model name: Intel HD Graphics CFL CRB Camellia: CamelliaDisabled (0), Freq: 0 Hz, FreqMax: 0 Hz Mobile: 1, PipeCount: 3, PortCount: 3, FBMemoryCount: 3 [0] busId: 0x00, pipe: 8, type: 0x00000002, flags: 0x00000098 - ConnectorLVDS [1] busId: 0x05, pipe: 9, type: 0x00000400, flags: 0x00000187 - ConnectorDP [2] busId: 0x04, pipe: 10, type: 0x00000400, flags: 0x00000187 - ConnectorDP 00000800 02000000 98000000 01050900 00040000 87010000 02040A00 00040000 87010000 ID: 3E9B0007, STOLEN: 57 MB, FBMEM: 0 bytes, VRAM: 1536 MB, Flags: 0x00801302 TOTAL STOLEN: 58 MB, TOTAL CURSOR: 1 MB (1572864 bytes), MAX STOLEN: 172 MB, MAX OVERALL: 173 MB (181940224 bytes) Model name: Intel UHD Graphics 630 Camellia: CamelliaDisabled (0), Freq: 0 Hz, FreqMax: 0 Hz Mobile: 0, PipeCount: 3, PortCount: 3, FBMemoryCount: 3 [1] busId: 0x05, pipe: 9, type: 0x00000400, flags: 0x000003C7 - ConnectorDP [2] busId: 0x04, pipe: 10, type: 0x00000400, flags: 0x000003C7 - ConnectorDP [3] busId: 0x06, pipe: 8, type: 0x00000400, flags: 0x000003C7 - ConnectorDP 01050900 00040000 C7030000 02040A00 00040000 C7030000 03060800 00040000 C7030000 Edited June 10, 2021 by tonyx86 Link to comment Share on other sites More sharing options...
headkaze Posted June 10, 2021 Author Share Posted June 10, 2021 2 hours ago, tonyx86 said: EDIT: it appears that IntelFramebuffer.bt is used to generate the connector spoilers in the IntelHD FAQs. Sorry I was a little slow in understanding your reply, since that's clearly what you meant in your updated comment. Thanks again. Yes but it only shows the hex dump of the connectors. You can take a look at the "struct FramebufferCFL" entry in IntelFramebufer.bt to see how the data is structured in Coffee Lake.bin and then search for the framebuffer id. Attached is a screenshot showing the id and connector data highlighted. 1 Link to comment Share on other sites More sharing options...
Jingu Posted June 18, 2021 Share Posted June 18, 2021 (edited) I'm not too sure what is different with Big Sur. WEG Graphics was working fine on Mojave and Catalina, but not with the Big Sur 11.3.1 USB installer. It fails to load the installer graphics part on both Clover r5136 and OpenCore 0.7.0 System Configuration Catalina 10.15.7 trying to upgrade with Big Sur 11.3.1 USB Installer Clover r5136 and OpenCore 0.7.0 (both UEFI mode) SMBIOS: iMac17,1 Motherboard: Skylake Asus H170I-PRO CPU: Intel Core i3 6300 GPU: Intel HD530, device id 1912 Connection: DisplayPort to DisplayPort connector no WEG boot arguments Lilu 1.5.3, WEG 1.5.0 The following DeviceProperties configuration works perfect with DisplayPort and HDMI for iMac17,1 on Mojave and Catalina, but not with the Big Sur installer. Edited June 18, 2021 by Jingu Link to comment Share on other sites More sharing options...
1Ale1 Posted June 18, 2021 Share Posted June 18, 2021 @headkaze is there a patch for this issue with WeG? Is 0xFirewolf on insanelymac? These are two 4K displays with DVMT preallocated to 128 IMG_1844_2.MOV Link to comment Share on other sites More sharing options...
MacKonsti Posted July 18, 2021 Share Posted July 18, 2021 Hello everyone, hi @headkaze and @vit9696 I would like to ask you the following that I have been noticing when using the latest releases of WhateverGreen kext, before raising any ticket in https://github.com/acidanthera/bugtracker/issues On my Intel NUC and Lenovo laptop, I am getting in the kernel log many, many errors that repeat each 2 seconds and I have no idea where this is coming from or how I can solve this. Namely: 2021-07-18 11:14:15.96 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB2 Not waiting for VBL as path state is not active 2021-07-18 11:14:15.99 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] [Connection_probe] err = 0 2021-07-18 11:14:16.01 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid Slice Count 2021-07-18 11:14:16.01 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid EU Count 2021-07-18 11:14:16.05 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB2 Not waiting for VBL as path state is not active 2021-07-18 11:14:16.05 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] [Connection_probe] err = 0 2021-07-18 11:14:17.67 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] displayPath is not NULL for index i = 0. continue 2021-07-18 11:14:17.70 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB2 Not waiting for in set gamma to solid color as path state is not active 2021-07-18 11:14:17.76 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] HDMI2.0 TODO: Enable AVI INFO frame 2021-07-18 11:14:18.03 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] HDMI2.0 TODO: Enable AVI INFO frame 2021-07-18 11:14:18.26 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] HDMI2.0 TODO: Enable AVI INFO frame 2021-07-18 11:14:18.52 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB2: Flip called without enabling VBL 2021-07-18 11:14:19.28 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] [AGDC] Get stream AUX access read for agdc port 1 stream=0 : address=0x2200, size=16 2021-07-18 11:14:19.28 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] FB0 Getting display status 2021-07-18 11:14:19.28 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] FB0 Display status is = 1 2021-07-18 11:14:18.66 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr 0 with Status = 0xe00002d6 2021-07-18 11:14:18.66 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux 2021-07-18 11:14:18.68 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr 0 with Status = 0xe00002d6 2021-07-18 11:14:19.28 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] [AGDC] Get stream AUX access read for agdc port 1 stream=0 : address=0x2200, size=16 2021-07-18 11:14:19.28 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] FB0 Getting display status 2021-07-18 11:14:19.28 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] FB0 Display status is = 1 2021-07-18 11:14:18.68 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux 2021-07-18 11:14:18.70 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr 0 with Status = 0xe00002d6 2021-07-18 11:14:19.28 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] [AGDC] Get stream AUX access read for agdc port 1 stream=0 : address=0x2200, size=16 2021-07-18 11:14:19.28 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] FB0 Getting display status 2021-07-18 11:14:19.28 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] FB0 Display status is = 1 2021-07-18 11:14:18.70 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux 2021-07-18 11:14:18.73 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr 0 with Status = 0xe00002d6 2021-07-18 11:14:19.28 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] [AGDC] Get stream AUX access read for agdc port 1 stream=0 : address=0x2200, size=16 2021-07-18 11:14:19.28 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] FB0 Getting display status 2021-07-18 11:14:19.28 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][INFO ] FB0 Display status is = 1 2021-07-18 11:14:18.73 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux 2021-07-18 11:14:18.75 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr 0 with Status = 0xe00002d6 2021-07-18 11:14:18.75 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux [...] 2021-07-18 11:14:18.77 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr e with Status = 0xe00002d6 2021-07-18 11:14:18.77 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux The last two lines keep repeating. From your experience, do you know if a) this is related to WhateverGreen? b) Any idea how to fix this if you consider it a serious error or how to stop flooding the logs? Is this totally related to the native Catalina kext for Intel iGPU display? Many thanks! Link to comment Share on other sites More sharing options...
deeveedee Posted July 22, 2021 Share Posted July 22, 2021 (edited) @MacKonsti I'm not seeing this on my HackMini8,1. What console filters/settings are you using to see these kernel log messages? Edited July 22, 2021 by tonyx86 Link to comment Share on other sites More sharing options...
deeveedee Posted July 22, 2021 Share Posted July 22, 2021 On 6/18/2021 at 9:50 AM, Jingu said: I'm not too sure what is different with Big Sur. WEG Graphics was working fine on Mojave and Catalina, but not with the Big Sur 11.3.1 USB installer. It fails to load the installer graphics part on both Clover r5136 and OpenCore 0.7.0 Spoiler On 6/18/2021 at 9:50 AM, Jingu said: @Jingu Just curious - why do you specify a portcount of 4? Link to comment Share on other sites More sharing options...
MacKonsti Posted July 22, 2021 Share Posted July 22, 2021 (edited) 5 hours ago, tonyx86 said: @MacKonsti I'm not seeing this on my HackMini8,1. What console filters/settings are you using to see these kernel log messages? Hi mate long time no see. Nothing complex, really. SMBIOS = MacMini8,1 / IGPU is Intel Iris Plus Graphics 655 [8086:3ea5] Terminal command = log show --style syslog -debug --info --last boot --predicate 'process == "kernel"' | cut -c 1-22,43-999 | grep -i igpu On Clover I only use for WhateverGreen the following injection, i.e. mainly device-id and platform-ID: <key>PciRoot(0x0)/Pci(0x2,0x0)</key> <dict> <key>AAPL,GfxYTile</key> <data>AQAAAA==</data> <key>AAPL,ig-platform-id</key> <data>BAClPg==</data> <key>hda-gfx</key> <string>onboard-1</string> <key>model</key> <string>Intel Iris Plus Graphics 655</string> </dict> The AAPL,GfxYTile is used for a stupid reason = when I use my monitor in vertical format, rebooting creates artefacts... so with this parameterI get a black screen before going to the BIOS boot screen... Thanks! Edited July 22, 2021 by MacKonsti Link to comment Share on other sites More sharing options...
deeveedee Posted July 23, 2021 Share Posted July 23, 2021 @MacKonsti Always good to hear from you and see you still active. I don't see any of those log messages on my HackMini8,1. My DeviceProperties also include AAPL,GfxYTile, but only because I saw it in the IORegistry dump from a real MacMini8,1. My DeviceProperties also include graphic-options, but again, only because I saw this in the IORegistry dump of a real MacMini8,1. Link to comment Share on other sites More sharing options...
MacKonsti Posted July 23, 2021 Share Posted July 23, 2021 Hi mate, one thing I forgot to mention @tonyx86 is that I run graphics via the USB-C port (only one) to mini-Display-Port via a special cable. I do not use HDMI port of the Intel NUC. Are you using the hardware port too? What is it? And the device properties injected, are they as simple as mine above in your config.plist? Thanks Link to comment Share on other sites More sharing options...
deeveedee Posted July 23, 2021 Share Posted July 23, 2021 @MacKonsti I use DP->DVI adapters, so my framebuffer patching required a lot of experimentation, since at the time (May 2020) there were no guides for patching with adapters and the guides all said not to use adapters. In the end, it is simple. See my EFI attached here. I haven't tried USB-C/Thunderbolt (my rig's USB-C port is USB3 only). I have a HackBookPro14,1 (HP Envy Laptop) that works perfectly, but I haven't tested its USB-C/Thunderbolt port with video. 1 Link to comment Share on other sites More sharing options...
anarkhos Posted July 28, 2021 Share Posted July 28, 2021 (edited) Hey guys, any word on whether any of these methods work on Iris Xe? I ask because the 3rd iteration of the LG Gram 17 fixed a lot of the long-standing issues and hell will freeze over before I buy a laptop with a soldered-in SSD. Edited July 28, 2021 by anarkhos Link to comment Share on other sites More sharing options...
wern apfel Posted July 29, 2021 Share Posted July 29, 2021 On 7/23/2021 at 6:38 PM, MacKonsti said: Hi mate, one thing I forgot to mention @tonyx86 is that I run graphics via the USB-C port (only one) to mini-Display-Port via a special cable. I do not use HDMI port of the Intel NUC. Are you using the hardware port too? What is it? And the device properties injected, are they as simple as mine above in your config.plist? Thanks I also use the USB-C port of my NUC for the display, there are no errors in the log. Since macOS doesn't support daisy-chain displays I only enabled 2 ports, frame buffers. Not sure if that's the reason, but worth a try. Link to comment Share on other sites More sharing options...
MacKonsti Posted July 29, 2021 Share Posted July 29, 2021 20 minutes ago, wern apfel said: I also use the USB-C port of my NUC for the display, there are no errors in the log. Since macOS doesn't support daisy-chain displays I only enabled 2 ports, frame buffers. Not sure if that's the reason, but worth a try. Hi mate thanks for confirming, which NUC are you using? I have the NUC8i7BEH2, can you share the graphics device properties you are injecting for WhateverGreen please, to compare? Are you running this same log output command that I posted? Remember that for OpenCore (not sure for Catalina but for sure on Big Sur) you guys need to add an extra parameter to keep the kernel logs: msgbuf=1048576 Are you using this boot-arg? You can't imagine what logs you're missing without it 1 Link to comment Share on other sites More sharing options...
wern apfel Posted July 29, 2021 Share Posted July 29, 2021 1 hour ago, MacKonsti said: Hi mate thanks for confirming, which NUC are you using? I have the NUC8i7BEH2, can you share the graphics device properties you are injecting for WhateverGreen please, to compare? Are you running this same log output command that I posted? Remember that for OpenCore (not sure for Catalina but for sure on Big Sur) you guys need to add an extra parameter to keep the kernel logs: msgbuf=1048576 Are you using this boot-arg? You can't imagine what logs you're missing without it I use the NUC8i5BEK2, the graphics should be the same. I use it only a few weeks, for now only Monterey is installed. Boot-arguments keepsyms=1 debug=0x144 alcverbs=1 msgbuf=10485760 Terminal command + output log show --style syslog -debug --info --last boot --predicate 'process == "kernel"' | cut -c 1-22,43-999 | grep -i igpu 2021-07-29 13:05:33.19 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Ring Size: 32 KB 2021-07-29 13:05:33.19 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Graphics Scheduler Preemption Enabled! 2021-07-29 13:05:33.19 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Setting preemptionDelayIntervalUS to 400 microseconds 2021-07-29 13:05:33.19 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Setting preemptionTimerIntervalUS to 2000 microseconds 2021-07-29 13:05:33.19 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Will NOT fallback to host-side scheduling if graphics firmware fails to load 2021-07-29 13:05:33.19 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Scheduler Tail Coalescing Enabled. 2021-07-29 13:05:33.19 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Scheduler Page Fault Handling Enabled. 2021-07-29 13:05:33.19 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Scheduler Single Channel Index Disabled 2021-07-29 13:05:33.19 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Scheduler Channel Wait For Complete Disabled 2021-07-29 13:05:33.19 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Scheduler: Process CSB using HWS. 2021-07-29 13:05:33.19 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Scheduler: PM notify enabled 2021-07-29 13:05:33.19 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Selected Apple Firmware Scheduler 2021-07-29 13:05:33.20 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Graphics Address: PPGTT, Separate Address Space 2021-07-29 13:05:33.20 kernel[0]: (AppleIntelKBLGraphics) [IGPU] MultiForceWake Enabled: Using 3D Driver 2021-07-29 13:05:33.20 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Render Compression Enabled. 2021-07-29 13:05:33.20 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Render Compression for IOSurface is Enabled. 2021-07-29 13:05:33.21 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Begin Gfx firmware load process 2021-07-29 13:05:33.21 kernel[0]: (AppleIntelKBLGraphics) [IGPU] ForceWake Multithread = 0x30002 2021-07-29 13:05:33.21 kernel[0]: (AppleIntelKBLGraphics) [IGPU] CONFIG0 (0xD00) = 0x80000000 2021-07-29 13:05:33.21 kernel[0]: (AppleIntelKBLGraphics) [IGPU] GT_THREAD_STATUS = 0x400b0000 2021-07-29 13:05:33.21 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Doing retry #0 2021-07-29 13:05:33.24 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Graphics Firmware Version: 2.18.5.2 2021-07-29 13:05:33.25 kernel[0]: (AppleIntelKBLGraphics) [IGPU] Graphics accelerator is using scheduler: Apple Firmware 2021-07-29 13:05:33.63 kernel[0]: (IOPlatformPluginFamily) HE2N_Key Does Not Exist, use kSMCPStatesIGPU for Internal GPU 2021-07-29 13:05:34.24 kernel[0]: (IOGraphicsFamily) loadPrefs: IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/IGPU@2-10ac-a0be-1b9c84d747a4543d using new key GFX WhateverGreen config <key>AAPL,GfxYTile</key> <data> AQAAAA== </data> <key>AAPL,ig-platform-id</key> <data> CQClPg== </data> <key>enable-max-pixel-clock-override</key> <data> AQAAAA== </data> <key>framebuffer-con0-busid</key> <data> BQAAAA== </data> <key>framebuffer-con0-enable</key> <data> AQAAAA== </data> <key>framebuffer-con0-flags</key> <data> xwEAAA== </data> <key>framebuffer-con0-has-lspcon</key> <data> AQAAAA== </data> <key>framebuffer-con0-index</key> <data> AQAAAA== </data> <key>framebuffer-con0-pipe</key> <data> CQAAAA== </data> <key>framebuffer-con0-preferred-lspcon-mode</key> <data> AQAAAA== </data> <key>framebuffer-con0-type</key> <data> AAgAAA== </data> <key>framebuffer-con1-busid</key> <data> BAAAAA== </data> <key>framebuffer-con1-enable</key> <data> AQAAAA== </data> <key>framebuffer-con1-flags</key> <data> xwEAAA== </data> <key>framebuffer-con1-index</key> <data> AgAAAA== </data> <key>framebuffer-con1-pipe</key> <data> CgAAAA== </data> <key>framebuffer-con2-busid</key> <data> AAAAAA== </data> <key>framebuffer-con2-enable</key> <data> AQAAAA== </data> <key>framebuffer-con2-flags</key> <data> IAAAAA== </data> <key>framebuffer-con2-index</key> <data> /////w== </data> <key>framebuffer-con2-pipe</key> <data> AAAAAA== </data> <key>framebuffer-con2-type</key> <data> AQAAAA== </data> <key>framebuffer-con3-busid</key> <data> AAAAAA== </data> <key>framebuffer-con3-enable</key> <data> AQAAAA== </data> <key>framebuffer-con3-flags</key> <data> IAAAAA== </data> <key>framebuffer-con3-index</key> <data> /////w== </data> <key>framebuffer-con3-pipe</key> <data> AAAAAA== </data> <key>framebuffer-con3-type</key> <data> AQAAAA== </data> <key>framebuffer-flags</key> <data> CgODAA== </data> <key>framebuffer-memorycount</key> <data> AgAAAA== </data> <key>framebuffer-patch-enable</key> <data> AQAAAA== </data> <key>framebuffer-pipecount</key> <data> AgAAAA== </data> <key>framebuffer-portcount</key> <data> AgAAAA== </data> <key>framebuffer-unifiedmem</key> <data> AAAAgA== </data> <key>igfxfw</key> <data> AgAAAA== </data> 1 1 Link to comment Share on other sites More sharing options...
MacKonsti Posted July 31, 2021 Share Posted July 31, 2021 Thanks for posting the config @wern apfel I had a look, not sure why WhateverGreen for this IGPU needs all that, since it's a model supported directly by the OS it seems (on some Apple computer that now can't remember). You do have this IGPU, yes ? According to my lspci -nn output (and Hackintool reports similar) 00:02.0 VGA compatible controller [0300]: Intel Corporation Coffee Lake Iris Plus Graphics 655 [8086:3ea5] (rev 01) I mean, why define memorycount, patch-enable, pipe etc. as I don't see the point for this graphics adapter to be honest... @tonyx86 and @wern apfel I made a mistake, apologies. The errors are not under IGPU but IGFB for frame-buffer, I am 99% certain you got them too: $ log show --style syslog -debug --info --last boot --predicate 'process == "kernel"' | cut -c 1-22,43-999 | grep -i error | grep -i igfb 2021-07-31 14:54:17.74 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB2 Not waiting for VBL as path state is not active 2021-07-31 14:54:19.30 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB2 Not waiting for VBL as path state is not active 2021-07-31 14:54:19.35 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid Slice Count 2021-07-31 14:54:19.35 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid EU Count 2021-07-31 14:54:19.40 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB2 Not waiting for VBL as path state is not active 2021-07-31 14:54:20.99 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] displayPath is not NULL for index i = 0. continue 2021-07-31 14:54:21.57 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB2 Not waiting for in set gamma to solid color as path state is not active 2021-07-31 14:54:21.63 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] HDMI2.0 TODO: Enable AVI INFO frame 2021-07-31 14:54:21.88 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] HDMI2.0 TODO: Enable AVI INFO frame 2021-07-31 14:54:22.09 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] HDMI2.0 TODO: Enable AVI INFO frame 2021-07-31 14:54:22.30 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB2: Flip called without enabling VBL 2021-07-31 14:54:22.53 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr 0 with Status = 0xe00002d6 2021-07-31 14:54:22.53 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux 2021-07-31 14:54:22.55 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr 0 with Status = 0xe00002d6 2021-07-31 14:54:22.55 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux 2021-07-31 14:54:22.57 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr 0 with Status = 0xe00002d6 2021-07-31 14:54:22.57 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux 2021-07-31 14:54:22.59 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr 0 with Status = 0xe00002d6 2021-07-31 14:54:22.59 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux 2021-07-31 14:54:22.62 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr 0 with Status = 0xe00002d6 2021-07-31 14:54:22.62 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux 2021-07-31 14:54:22.64 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr e with Status = 0xe00002d6 2021-07-31 14:54:22.64 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux 2021-07-31 14:54:22.66 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr e with Status = 0xe00002d6 2021-07-31 14:54:22.66 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux 2021-07-31 14:54:24.81 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] FB0: ReadAUX Timeout for addr 100 with Status = 0xe00002d6 2021-07-31 14:54:24.81 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] [AGDC] Failed with status -536870212 for stream access aux 2021-07-31 14:56:13.10 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid Slice Count 2021-07-31 14:56:13.10 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid EU Count 2021-07-31 14:56:22.10 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid Slice Count 2021-07-31 14:56:22.10 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid EU Count 2021-07-31 14:56:28.46 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid Slice Count 2021-07-31 14:56:28.46 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid EU Count 2021-07-31 14:56:34.46 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid Slice Count 2021-07-31 14:56:34.46 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid EU Count 2021-07-31 14:56:37.37 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid Slice Count 2021-07-31 14:56:37.37 kernel[0]: (AppleIntelCFLGraphicsFramebuffer) [IGFB][ERROR ] updateSliceConfig Requesting Invalid EU Count Can you confirm? Anyone else too? Not sure if this is by the system or WhateverGreen... 1 Link to comment Share on other sites More sharing options...
shiecldk Posted August 1, 2021 Share Posted August 1, 2021 (edited) Hi @headkaze and forks, I'm trying to patch the UHD630 on i7-10870h for my ASUS ZenBook Pro Duo 15, which has two screens (main screen is OLED 4k, secondary screen is 3084x1100 LCD, both are touchscreens). However, I can only get one of the screen work at a time. I've tried 0900A53E, 00009B3E, and 07009B3E.Could you instruct me how do I make both of the screens work on the same time? Below are some of the test I have done with these framebuffers.For the main screen only setup: (secondary screen, 3084x1100 LCD, cannot be detected. The secondary screen functions as a trackpad which has the cursor and tap to click function only. (multi touch gestures including scroll not work.)) ------------------------------------------------------------------------------------------------------------------------------------------------ For the secondary screen only setup: (main screen, 4k OLED, is detected but is black. The OLED functions as a trackpad which actually mirrors the position of the secondary screen with its touch functionalities. (multi touch gestures works.)) For the secondary screen, although both screens are detected, only the secondary screen is working, which is the one at bus-id 0x06 in both tests above. Edited August 1, 2021 by shiecldk Link to comment Share on other sites More sharing options...
shiecldk Posted August 2, 2021 Share Posted August 2, 2021 (edited) I actually figured it out myself. Both screens work well with the following Framebuffer in macOS Catalina 10.15.7. Edited August 10, 2021 by shiecldk Link to comment Share on other sites More sharing options...
deeveedee Posted August 2, 2021 Share Posted August 2, 2021 (edited) @MacKonsti When searching the log for IGFB, I do see the same errors as you indicated. My rig (fully defined here) is as follows: Intel Chipset: Q370 Intel CPU: i9-9900 (8 core / 16 thread) Graphics: UHD630 Coffee Lake (device-id 0x3e98) (3 DP->DVI) macOS: Big Sur 11.5.1 Framebuffer: 0x3e920000 WhateverGreen.kext 1.5.1 If I hadn't looked, I'd never have known about the ERRORs, so thanks for pointing this out. I haven't observed any issues (graphics or otherwise), so I'm not sure how to interpret the ERRORs. EDIT: @MacKonsti I checked again and my errors are slightly different from what you posted. My ERRORs are all/only "FBx: ReadAUX Timeout for addr" and "AGDC not registered. Unmanaged display." errors. Edited August 3, 2021 by tonyx86 1 Link to comment Share on other sites More sharing options...
deeveedee Posted May 30, 2023 Share Posted May 30, 2023 (edited) I have been basing my Intel framebuffer patches on the assumption that logical connectors (as seen by WEG for framebuffer patching) are numbered starting at 0 (con0) and that the index is independent of the connector number (e.g., con0 could have index = 1). Further, my understanding is that the connectors defined in macOS standard 3-connector framebuffers define con0, con1, con2. I thought that in the following framebuffer definition corresponding to AAPL,ig-platform-id 0x59120000, con0 has index = 1, con1 has index = 2, con2 has index = 3. Is my understanding correct? For example, when using WEG to patch the framebuffer definition (below) for 0x59120000, is WEG patching con0, con1 and con2 (with indices 1, 2 and 3 respectively) or is WEG patching con1, con2 and con3? ID: 59120000, STOLEN: 38 MB, FBMEM: 0 bytes, VRAM: 1536 MB, Flags: 0x0000110B TOTAL STOLEN: 39 MB, TOTAL CURSOR: 1 MB (1572864 bytes), MAX STOLEN: 115 MB, MAX OVERALL: 116 MB (122171392 bytes) Model name: Intel HD Graphics KBL CRB Camellia: CamelliaDisabled (0), Freq: 1388 Hz, FreqMax: 1388 Hz Mobile: 0, PipeCount: 3, PortCount: 3, FBMemoryCount: 3 [1] busId: 0x05, pipe: 9, type: 0x00000400, flags: 0x00000187 - ConnectorDP [2] busId: 0x04, pipe: 10, type: 0x00000400, flags: 0x00000187 - ConnectorDP [3] busId: 0x06, pipe: 10, type: 0x00000400, flags: 0x00000187 - ConnectorDP 01050900 00040000 87010000 02040A00 00040000 87010000 03060A00 00040000 87010000 I ask, because in this document, the following example is given: Example of a semantic patch: HDMI type connector (connector-type=00080000 for connectors with index 1, 2 and 3). Is this example for a 4-connector framebuffer (with con0, con1, con2 and con3) and con0 is not being patched, or is this a misprint in the document? Edited May 30, 2023 by deeveedee Link to comment Share on other sites More sharing options...
makk Posted July 13, 2023 Share Posted July 13, 2023 @deeveedee It is sort of confusing at first. con0 don't use. I'm assuming you have external standalone Monitor? Display Monitor if external sitting on the table or desk? DVI HDMI DP Whatevergreen Intel HD Manual Semantic and Binary patching; 2 choices to get the job done. which one works? have to try. For myself I used the shorter version of Binary. Though I have used the long version Binary as well. Which seems to work well with Kaby Lake UHD 630 mobile laptops. EXAMPLE Using a Broadwell Laptop <> Mobile designation <> chips are different so be careful not to use mobile-laptop for Desktop and vice versa. 0x16260006 mobile 356 MB ID: 16260006, STOLEN: 34 MB, FBMEM: 21 MB, VRAM: 1536 MB, Flags: 0x00000B0B TOTAL STOLEN: 56 MB, TOTAL CURSOR: 1 MB (1572864 bytes), MAX STOLEN: 124 MB, MAX OVERALL: 125 MB (131608576 bytes) Camellia: CamelliaDisabled (0), Freq: 2777 Hz, FreqMax: 2777 Hz Mobile: 1, PipeCount: 3, PortCount: 3, FBMemoryCount: 3 [0] busId: 0x00, pipe: 8, type: 0x00000002, flags: 0x00000230 - ConnectorLVDS [1] busId: 0x05, pipe: 11, type: 0x00000400, flags: 0x00000507 - ConnectorDP [2] busId: 0x04, pipe: 11, type: 0x00000400, flags: 0x00000507 - ConnectorDP 00000800 02000000 30020000 < don't use > may cause black out screen 01050B00 00040000 07050000 02040B00 00040000 07050000 How it turns out from the above data using the Whatevergreen Index: framebuffer-con1-enable | Data | 01000000 framebuffer-con1-alldata | Data | 01050B00 00080000 82000000 framebuffer-con2-enable | Data | 01000000 framebuffer-con2-alldata | Data | 02040B00 00080000 82000000 HDMI or LVDS; I think it pretty much covers all three types of output. Display outs. XXXXXXXX 00080000 82000000 <> wildcard type thing here ( Rehabman introduced this pretty cool trick ) So: First 8 numbers: 01050B00 <> this comes from line two up top of the Whatevergreen Manual. 02040B00 <> this is is from line three up top. These get tossed: 00040000 07050000 00040000 07050000 And Replaced with Wildcard ( there's a proper name; Rehabman has all the duds) 00080000 82000000 HDMI pass through. I believe DP as well. Now in the case where there is a bump: 00040000 <> replace the 4 with 8 on both line 2 and 3. So lets put the two different lines in a row: bus ID 1 <> 00040000 07050000 bus ID 1 <> 00080000 07050000 bus ID 2 <> 00040000 07050000 bus ID 2 <> 00080000 07050000 keep the First 8 in line 2 and 3 bus ID 1 <> 01050B00 bus ID 2 <> 02040B00 End result: 01050B00 00080000 82000000 02040B00 00080000 82000000 bus ID 0 <> don't need except in that funny circumstance. Sometimes this doesn't not pan out: 00080000 82000000 so try: 0004000 8200000 or : 0006000 82000000 or: 00080000 07050000 Link to comment Share on other sites More sharing options...
cankiulascmnfye Posted July 13, 2023 Share Posted July 13, 2023 (edited) Webfalter released a new version of OCToolbox. It's a small tool which has some calculators for OpenCore. I suggested to him to include a calculator for Framebuffer and Connector flags as well. It's a bit easier to use than the tiny window in Hackintool and also includes a Big Endian to Little Endian converter. It can also "reverse engineer" flag values to show the flags it includes. Edited July 13, 2023 by cankiulascmnfye 1 1 Link to comment Share on other sites More sharing options...
Recommended Posts