Jump to content

[80% Solved] Iris Xe iGPU on Tiger Lake successfully loaded ICLLP Frambuffer and VRAM also recognizes 1536MB! + However, some issues.


shl628
740 posts in this topic

Recommended Posts

no. tgl is from the dtk it doesnt matter os x version. sometimes i get a boot hang if not removing the usb pen after boot starts

 

or if you mess with /S/L/E maybe it bugged /L/E

 

can you load the kext with kextload ?

 

gonna remove the tgl graph from nblue just a sec

k download again info.plist as frame only ids

 

if you installed this to /S/L/E it will cause a bug

Capturadeecr2024-11-06s19_08_20.png.ed85e3349d3e3a75fc906e13f7474bff.pngCapturadeecr2024-11-06s19_08_03.png.fe2444f1ee7a5413abac0b1483fa7ef0.png

gonna remove this ids from sle_internal zip just in case

done srcs are on this page

 

hmm idk it hangs at gtrace point 1. it's very strange

maybe cause your display uses applebacklight?

my displays is not using it

image.png.b7828adb2354400affc7cb133e5930b9.png

Edited by jalavoui
Link to comment
Share on other sites

becoolio@MacBook-Air Downloads % sudo kextload /Library/Extensions/AppleIntelTGLGraphicsFramebuffer.kext 
Executing: /usr/bin/kmutil load -p /Library/Extensions/AppleIntelTGLGraphicsFramebuffer.kext
Error Domain=KMErrorDomain Code=71 "Kernel request failed: (libkern/kext) kext (kmod) start/stop routine failed (-603946985)" UserInfo={NSLocalizedDescription=Kernel request failed: (libkern/kext) kext (kmod) start/stop routine failed (-603946985)}
becoolio@MacBook-Air Downloads % 

Apple Backlight is usually added via the nblue plist, but it wasnt modified when i was testing.

Edited by Mastachief
Link to comment
Share on other sites

open log console and redo kextload so you can check the error. seems like permissions or dependencie error. use tgl as console filter

image.thumb.png.322fcd204062e4d901aa930af0018ea2.png

anyway u found the cause

 

hope this is not some extra dependency caused by sonoma

Edited by jalavoui
Link to comment
Share on other sites

com.xxxxx.driver.AppleIntelTGLGraphicsFramebuffer exists in Optional(file:///Library/Extensions/AppleIntelTGLGraphicsFramebuffer.kext/), telling kernel to mark as available
KextLog: AuxKC bundle com.xxxxx.driver.AppleIntelTGLGraphicsFramebuffer marked as loadable
loading extension from in-kernel fileset: com.xxxxx.driver.AppleIntelTGLGraphicsFramebuffer (will start, will match)
OSMetaClass: Kext com.xxxxx.driver.AppleIntelTGLGraphicsFramebuffer class AppleIntelPlane is a duplicate;kext com.apple.driver.AppleIntelICLLPGraphicsFramebuffer already has a class by that name.
Kernel Extension ALLOWED: Kext ((null), com.xxxxx.driver.AppleIntelTGLGraphicsFramebuffer) version: 4eb03d42eb57e89ec6ed82f4e519e5685e636614
Kext com.xxxxx.driver.AppleIntelTGLGraphicsFramebuffer did not start (return code 0xdc00400a).

 

 

image.thumb.png.65854dbf6e8d8e34062be911bf14727f.png

 

 

Edited by Mastachief
Link to comment
Share on other sites

same id in com.apple.driver.AppleIntelICLLPGraphicsFramebuffer ? 0x9a49 shoudn't match system icl

 

i've got that error some time ago also. cache error from old kexts maybe

 

that is cause u booted wit icl kext

 

that's why u got that error

 

boot without nblue to test

 

glad i remenbered that

 

anyway just reset /L/E cache after boot.

 

i think the cache might be ok so hang issue is something else. test nblue binary with card id on icl sys frame to check (leave tgl card id empty)

Edited by jalavoui
Link to comment
Share on other sites

no wg no nblue boot with zero graph kexts.

 

idk if what asus sayd about lilu kext loader loop is causing some type of hang

 

tying to understand this code. maybe relates to CsbProcModeSelect parameter from info.plist

image.png.9ea99e05e8863823eac3fc676404bbfc.png

 

scheduler 5 doesnt load firmware. trying to guess how this works and why it is failing

 

image.png.3e8ddb9f97c8108b49fba67366a54da0.png

 

 

visual can you translate this china code ?

 

image.png.e99208b9d2e1b426ab9f4acf5895da04.png

 

better start here

image.png.047dcf6e044c97f625614b7fe9eb3b0c.png

 

 

Edited by jalavoui
Link to comment
Share on other sites

i've updated nblue to allow loading any of the tgl framebuffers (debug or production)

+extra patches

 

so choose tgl frame from sle_internal (le or  lep) and test it

 

gonna move srcs +sle_internal to another thread so i can update 1st post

 

 

 

 

Edited by jalavoui
  • Like 2
Link to comment
Share on other sites

 

Hi guys, I also have a laptop with these features
I was going to install the latest Sequoia OS. I will definitely have problems with the video card, (that's why I'm here) if it's possible to contribute to the cause I'm here.
Thx
image.thumb.png.51d1ac785dcb34f745bb794fdb377fdc.png

Link to comment
Share on other sites

found the hang at boot reason. doing updates to nblue

 

done test the binary again it defaults to tgl loading.

 

src is updated with tgl graph in /l/e. the entry is gen7TGLle (devs only)

 

so the problem is caused by having in nblue info.plist an entry with a card id and the kext to load is not on the system or can't be loaded. 

 

care when you put a value in IOPCIPrimaryMatch on this section

 

image.png.954d03a3de14e6344534672e27fa7059.png

 

btw this changes are all masta fault. that is why i got this hang bug

hope it works

 

Edited by jalavoui
Link to comment
Share on other sites

Yeah, it's my fault indeed, sorry Jala, I just did a wipe and reinstalled Sonoma to get rid of SLE bug, also I was able to get logs and all now. it boots with le TGL frame in /L/E
 
For some reason, it shows the intel generation as Sandy Bridge.

Also, even if you raise the brightness to max at the opencore boot screen, it switches back to a mid level brightness at the log in screen.
 
If the laptop goes to sleep and wakes up, the screen becomes inverted in colors, if you change resolutions the colors switch to the normal colors for a quarter second before going back to the inverted colors. its the last image in this post.
 
Here's my current ioreg.  --->    becoolio’s MacBook Air ioreg.zip
logs --->       x.log.zip
 
 
 Screenshot2024-11-08at09_23_11.thumb.png.a1f464b32d376ef0d42d85a076c6edcb.png
 
 
 
Screenshot2024-11-08at09_23_01.thumb.png.318b202b7284a4497aaa6b90dd9ef940.png
 
 
 
Screenshot2024-11-08at09_22_46.thumb.png.2916fe0fa0c07de38c74ee835c76b813.pngScreenshot2024-11-08at08_58_09.thumb.png.311e37d3a01f86bd7102df3b61ce6f19.png
 
 
 
Screenshot2024-11-08at08_21_32.thumb.png.d839b34ded31d54c113ee4b73db1ce0f.png
 
 
 
 
image.png.13da23c55136125d07cb07fefd9111a3.png
 
 
 
 
 

497fe0485bca87dc2692dd80f9f8eca2.jpg

Edited by Mastachief
Link to comment
Share on other sites

glad it worked. let me think about the issues u have.

on my system on shutdown os x reboots. must be cause of preparetoxxx calls. and also cause i dont have a wake/sleep cycle working on the laptop

 

your log files as no tgl log lines. 1st boot bug? sometimes i dont get logs on 1st boot

 

the color issue idk. os x color profile?

 

if u wanna play with source code try change port settings. carefull cause wrong settings and you get a hung

image.thumb.png.1f337e2e58760bd70bf7c3daf3d10827.png

 

try inject display props with nblue info.plist also a option

 

the edid overwrite injected with open core might help

 

anyway now u can help me with advanced testing in xcode

hope you find new things to fix

 

you now can swap tgl debug / tgl production kexts in /L/E as they are expected to work

Edited by jalavoui
Link to comment
Share on other sites

Just rebooted, however, I don't get the logs on the second boot either,

Ill need to check my oc settings to see where the logs are going.

If only we had more people with the 9A49 or 9A40 variant.

 

got this log from using hackintool when using the le debug version.

 

boot.log

 

the tglframe production version in le with tglgraphics kext works, well it boots and i dont have that log as yet.

 

I override the display with my own EDID using nblue plist, however it wont show up until connectors are fixed.

 

 

Edited by Mastachief
Link to comment
Share on other sites

also check this in asl patches. the logs i think are some oc flag.check asus thread

 

check joevt wg patch for syspolicyd. it is for dell vendor id

 

image.thumb.png.3a95a0a8c22cbffe49e37853009660a5.png

 

image.png.b064f3888f68cddf27e971d8b6138b59.png

 

so atm only 2 people are using nblue

dam that is low

 

your display seems very active. mine is not doing this. maybe this causes issues?

 

image.png.94f610e55bab3b71d05053e7730f54d4.png

 

masta can you test by removing bkl ssdt? maybe helps. bkl code is broken atm in tgl

image.png.bfa715629f6ab1bece8603009f2e7659.png

 

why u don't use this ?

image.png.b1caf7c4c582bbe7d7d200c2a57cad0e.png

 

and the sbus?

image.png.c509e44e282357dc63cccd82821fadce.png

Edited by jalavoui
Link to comment
Share on other sites

so i was playing with this for tgl production. and with some ida imports got a dwarf file that can be shared

goal is get rid of china code disassembly

 

image.png.d26824e0c4c9f62b36adcd782f5b271e.png

 

tgl.dwo.zip

 

was fun but i think can do better

can i make bninja read from aux.kc and get functions from sys.kc and boot.kc as in ida pro?

ofc there must be a easier way

Edited by jalavoui
Link to comment
Share on other sites

option a) is nblue ports patch. i just remenber you can try change display connect flags maybe it helps and wrong port type 2 value

 

i remenber long ago to disable some power settings with hackintool. some are display related. not sure which ones to look for

hope you find some workaround for the colors issue

 

nblue as prepareToExitWake disabled. try enable it might work for you cause u have a working sleep/wake laptop

 

anyway u have a much better laptop to fix than me so i guess for now all good

 

let's focus on acelerator kext...

 

Edited by jalavoui
Link to comment
Share on other sites

The colors issue only happen if the computer goes to sleep, its working fine otherwise, i might need to setup  _GPRW before working on sleep.

 

Besides, Dell Laptops have a S3 sleep issue, can only use half-baked modern standby (S0) -->

 


 

a006751933ac85b18b28a6ebbc96d2ea.jpg

Edited by Mastachief
Link to comment
Share on other sites

6 hours ago, Mastachief said:

The colors issue only happen if the computer goes to sleep, its working fine otherwise, i might need to setup  _GPRW before working on sleep.

 

Besides, Dell Laptops have a S3 sleep issue, can only use half-baked modern standby (S0) -->

 


 

a006751933ac85b18b28a6ebbc96d2ea.jpg

 

ACPI S3 sleep works fine on Dell 11th-14th gen (but not 10th, due to faulty logic), despite Dell's attempts to sabotage it. Enable mem_sleep_default=deep in your favourite version of linux and you'll see it works fine. Windows 10/11 need to force disable of Modern Standby but there are a few well-documented processed to make it work. Oh and you need to setup_var ACPI S3 (and S4) in your UEFI IFR variables.

 

Under macOS, you need to inject a few SSDT tables to get the pre-sleep states to save properly, but if you do it correctly, it will work fine. Both my Dell Alder and Raptor Lake XPSes have S3 and S4 (hibernation) working correctly, but only when connected to an eGPU for now, because (as you know) sleep won't initialise without a properly loaded framebuffer. Check my GitHub if you need some pointers.

 

Your I2C devices are most likely working in polling, not APIC/GPIO mode (I cant load your ioreg for some reason, maybe sonoma format is different to venture), the devices need to have a special pinmode configuration in their SSDT initialisation to do so, otherwise your dmesg and system logs will be clouded with I2C messages. Not much support is provided for 11+ gen devices from the I2C team but after much trial and error I got the XPS 9520 and 9730 trackpad devices to use GPIO mode, but had to rewrite the I2C SSDT logic myself, so take a look at my repo. The VoodooI2C team is even less resourced than this group atm.

 

If you send me your latest EFI (or push it to your github) I can take a look and suggest some fixes for your Latitude. tbh right now I'm more focussed on trying to see which connector tables I need to patch for my Xe IGPU (0x46a6) to make the framebuffers load correctly in Ventura. just setting platform-id and/or device-id to 0x9a49 doesn't work... 

Edited by jkbuha
Link to comment
Share on other sites

I just pushed the latest config, the original "working" nblue is in a zipped folder in EFI/OC/Kexts,

 

its currently set to use the nblue that requires the production/debug version of tglframebuffer and tglgraphics kexts in /Library/Extentions.

Edited by Mastachief
  • Thanks 1
Link to comment
Share on other sites

Xe IGPU (0x46a6) is kinda same family as asus laptop (check his thread)

from is logs i think is doable - load adl in tgl framebuffer.

the connector patch you mentioned is so easy todo using nblue (conn zero). but i think other issues will pop up

don't think at 0x9a49 as a limitation. it is the way i foud out to link tgl settings with tgl fram kext graphics kext.

waht really makes the driver works are the patches

 

idk what you guys need todo it but we here to help

 

 

image.png.364d75e93735c435fbb34e5e7b968d7f.png

 

the i2c gpio pins... i just can't do it. staying in pool mode for now

but ofc i'm here also to learn altough i'm bad with dsdt's (can't make lilu do a simple GPRW rename...)

 

jkbuha can you link us your github ?

 

omg i'm so pro... my SSDT-AWAC.aml was disabled and no sleep/wake cycle. now that is enabled i have the power cycle working

Edited by jalavoui
  • Thanks 1
Link to comment
Share on other sites

Funnily enough, I ended up using GenI2C to load my DSDT and generate the SSDT's and ACPI patches.

After having shl628 mod my SSDT-TPD0.aml

If you can find it, I recommend version 1.2.7 and up.

Link to comment
Share on other sites

×
×
  • Create New...