Jump to content

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


shl628
164 posts in this topic

Recommended Posts

Im trying to test on Sonoma 14.2.1, however i receive the boot log error below?

 

Lilu       api: @ (DBG) got load request from NootedBlue (100)
Lilu       api: @ automatically disabling NootedBlue (100) on an unsupported operating system
NootedBlue      init: @ parent said we should not continue 4

 

Would I have to rebuild nblue for Sonoma? or is there a setting in nblues info.plist i can edit to allow it to load on Sonoma?

 

  • Sad 1
Link to comment
Share on other sites

dont. it is ment to work in ventura (the patches i did)

 

for sonoma u need to guess new patches.

i'll upload a new release with comments on function patches to help

 

this will load on sonoma but need patch fix for sure

also i did

auto *prop = OSDynamicCast(OSData, this->iGPU->getProperty("AAPL,ig-platform-id"));

if (!prop)

        this->iGPU->setProperty("AAPL,ig-platform-id", builtin2, arrsize(builtin2));

 

so you can use opencore injection

i'm working on custom monitor injection properties atm

i comment the code so you can guess sonoma patches

 

update:

i've add display injection in info.plist

you can now use hackintool and inject a custom display in nblue (remove the sample i put)

 

 

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

Posted (edited)

@jalavoui 

 

Test 5
- WhenverGreen : Disabled
- IGPU Device Properties : do not inject
- boot-args : -nbluedbg -allow3d

- macOS Version : macOS Catalina 10.15.7

 

image.thumb.jpeg.f082b284ddce5afc96944591ad46c7a1.jpeg

 

I get the same kernel panic whether I apply -allow3d or not.

Edited by shl628
Link to comment
Share on other sites

Posted (edited)
5 minutes ago, jalavoui said:

plz test on ventura or sonoma only

 

I'm Sorry, but the kernel panic log is not visible in macOS Ventura 13.x version... 😢

During the boot process, it just stops without any kernel panic logs.

I will install macOS Ventura 13.x again later.

Edited by shl628
Link to comment
Share on other sites

Posted (edited)
7 minutes ago, jalavoui said:

that's weird it looks like it is just hanging and not giving panic (wrong lilu or nblue is not after lilu in opencore list ?)

 

image.png.ba5eb702d3e0ccc214e5b2dc5f04e1d8.png

 

As shown in the picture, NBlue is loaded after Lilu.

I think a kernel panic actually occurred, but it doesn't appear in the boot log.

Edited by shl628
Link to comment
Share on other sites

can you inject old AAPL,ig-platform-id ? the new code supports it

in nblue you now can disable some gpu settings in info.plist

 

i found a panic if other lilu addons also use _cs_validate_page

other addons can also make the system hang (cause of lilu calls)

 

this new info.plist logic allows to change some parameters

image.png.f2cc0ea557d1debee03dc77bbd42e21b.png

 

 

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

7 hours ago, jalavoui said:

you guys can try change in NBlue the code for AAPL,ig-platform-id. it's set to {0x01, 0x00, 0x52, 0x8A};

maybe disable and add manual id to opencore ?

 

i'm sure crashes depend a lot on the kind of laptop display that you use

i forgot to say that i'm not using any SSDT-PNLF - it means no backlight support for now

my boot args are debug=0x100 keepsyms=1 -vi2c-force-polling -allow3d

my bios settings: reset to defaults and disable secure boot

 

shl628

can you check the panic log with NBlue ? maybe patches are wrong for latest ventura or your hardware needs something specific to work

do not use whatevergreen with nblue

in nblue i only changed in info.plist the SupportDynamicCDClk setting

 

this are the lilu debug and kernel sdk that i'm using (can get them elsewhere anyway)

 

Arquivo.zip 4.47 MB · 7 downloads

 

so i reverted the SupportDynamicCDClk to 1 and disable 1 patch in nblue. working fine for me (the screen flicks a bit during boot)

if you guys wanna test other cards ids just edit the info.plist of nblue

 

 

i know my deviceID for my iGPU is 9a688086, idk what AAPL IGPU platformID i need to use for it with nblue or other settings in deviceproperties in OC to add tbh. I checked on google no luck or elsewhere. Same with the kext's code, i just got the laptop 1 or 2 months ago as i said, i dont know it well enough to know what AAPL i need.

Edited by benmacfreak
Link to comment
Share on other sites

manged to detect the micron nvme (isn't this a unsupported nvme disk?)

 

need to enter bios and disable intel vmd setting near sata ahci options (use the advanced bios mod i posted earlier)

i have disabled turbo mode cause in os x the cpu just burns with it enabled

on 1st reboot need to enter windows safe mode to update settings

 

anyway just in case i updated the NVMeFix.kext with linux 

    { 0x1344, 0x6001,   /* Micron Nitro NVMe */
              NVME_QUIRK_BOGUS_NID, },
    
    { 0x1344, 0x5407, /* Micron Technology Inc NVMe SSD */
             NVME_QUIRK_IGNORE_DEV_SUBNQN },

lol my disc id is 0x1344 but 0x5411 not in quirk list

no need to use SSDT-NVME_OFF.aml etc

trim is enabled by default

without intel vmd the disc mode pushes the fans a lot. is there a intel vmd driver for macos or linux ?

 

NVMeFix.kext.zipNVMeFix-master.zip

 

image.png.c3dccedb0254b5998be132f42df29873.png

Edited by jalavoui
Link to comment
Share on other sites

1 minute ago, jalavoui said:

manged to detect the micron nvme (isn't this a unsupported nvme disk?)

 

need to enter bios and disable intel vmd setting near sata ahci options (use the advanced bios mod i posted earlier)

on 1st reboot need to enter windows safe mode to update settings

 

anyway just in case i updated the NVMeFix.kext with linux 

no need to use SSDT-NVME_OFF.aml etc

trim is enabled by default

 

NVMeFix.kext.zip 16.25 kB · 0 downloads NVMeFix-master.zip 79.91 kB · 0 downloads

 

image.png.c3dccedb0254b5998be132f42df29873.png

grats javavoui, but yeah im struggling to figure out what settings i need in OC and nblue to attempt to get my iris xe graphics going. Can you and/or sky help me? i know my laptop is an asus tuf f15 fx506heb 

Link to comment
Share on other sites

Can I use any other properties, device-id etc, or only "AAPL,ig-platform-id" for now,

 

I originally disabled the PciRoot(0x0)/Pci(0x2,0x0) key itself while doing my inital first tests with nblue on SOnoma, I was using MacbookPro16,2 though,

 

image.png.a4f69343471505af947cad139d9a3f86.png

 

When trying AAPL,ig-platform-id - 0000538A with macbookpro14,1 with debug=0x100 keepsyms=1 -vi2c-force-polling -allow3d  as boot arguments, i get a big stop sign, im guessing thats because im trying to boot sonoma with macbookpro14,1

 

Also are you using any acpi patches, also are you using the emulate option in opencore or are you using lilucpu=X?

 

image.thumb.png.ba028ee41a1120c3fade13a3f57e58ad.png

 

usually when you are emulating a specific igpu, you use the generation processor its on, or can i get away with cometlake or icelake emulation?

 

Edit:

when using Macbookpro16,2 and nblue, i get the below kp, i had disabled applealc and intelbluetooth and weg already (those are the main lilu plugins), dont have broadcom kexts, it says its apple smc thats causing the kp, but virtualsmc is need in order to boot, and the smc plugins might be making the calls. those are like Im smcbattermanagerkext etc,  I could be wrong.....

20240316_211411.thumb.jpg.fe6811118ec65fab02bf1ee0205a9df4.jpg

 

 

 

Edited by Mastachief
Added boot KP
Link to comment
Share on other sites

Posted (edited)
15 hours ago, jalavoui said:

can you inject old AAPL,ig-platform-id ? the new code supports it

in nblue you now can disable some gpu settings in info.plist

 

i found a panic if other lilu addons also use _cs_validate_page

other addons can also make the system hang (cause of lilu calls)

 

this new info.plist logic allows to change some parameters

image.png.f2cc0ea557d1debee03dc77bbd42e21b.png

 

NootedBlue.kext.zip 16.59 kB · 7 downloads NootedBlue-master.zip 101.06 kB · 1 download

 

Test 6
- WhenverGreen : Disabled
- IGPU Device Properties : AAPL,ig-platform-id = 0200518A, etc...
- boot-args : -v keepsyms=1 debug=0x100
- macOS Version : macOS Ventura 13.6.5

 

Regardless of whether the value of SupportDynamicCDClk is 0 or 1, booting stops as shown in the photo below.
I have the same problem even if I inject various Platform IDs using the AAPL,ig-platform-id property.
Also, the same problem occurs when -allow3d boot arg is applied.

 

image.thumb.jpeg.42a2359b69a02b462b8f62fc7f55cf28.jpeg

 

image.thumb.jpeg.59b59d673226667eebe5e094f247fdce.jpeg

 

In my opinion, this needs a patch to resolve the Unsupported CD Clock Frequency kernel panic.
Of course, I understand that you said WEG must be disabled.
However, the above booting problem can be solved by adding only the -igfxcdc option in the current Test6 setting conditions.

 

If I also add -allow3d boot arg here, the "Unexpected context status buffer entry" kernel panic below occurs.

Unexpected context status buffer entry KP.txt

 

Spoiler

image.thumb.png.d245c349247bf239712b0984fb5cda70.png

 

image.thumb.png.a5bdb135e330f0e7d48614a769e8a54c.png

 

I'm sorry, but would it be a bit difficult to add WEG's CD Clock patch module to NBlue?

Or, is there a binary patch that can bypass Unsupported CD Clock Frequency kernel panic?

 

Additionally, I just noticed that display-related settings have been added to NBlue's Info.plist.
I will test this too.

 

+ After adding igfxfw=2 boot arg, Unexpected context status buffer entry kernel panic was resolved and booting was possible.

https://github.com/acidanthera/bugtracker/issues/1343


However, graphics acceleration does not work yet.
And, my IGPU boot log is now almost similar to jalavoui's IGPU log.
I also get the following log output :

[   26.661257]: [IGPU] virtual IOService *IntelAccelerator::probe(IOService *, SInt32 *): Found device with ID 0x9a498086, revision 0x1, PCH id 0x0, PCH rev 0x0 at PCI 0:2:0
[   26.661267]: [IGPU] virtual IOService *IntelAccelerator::probe(IOService *, SInt32 *): Found device with ID 0x9a498086, revision 0x1, PCH id 0x0, PCH rev 0x0 at PCI 0:2:0
[   26.932737]: [IGPU] Detecting Pre-Si/Si Mode ... [Si]
[   26.932741]: [IGPU] Detecting Pre-Si/Si Mode ... [Si]
[   27.203828]: [IGPU] HWCAPS - GPU Sku: 9
[   27.203836]: [IGPU] HWCAPS - GPU Sku: 9
[   27.203838]: [IGPU] HWCAPS - VEDBOXEnableFuses:0x10005  VEBox units enabled:1   VDBox units enabled:2
[   27.203841]: [IGPU] HWCAPS - VEDBOXEnableFuses:0x10005  VEBox units enabled:1   VDBox units enabled:2
[   27.203843]: [IGPU] HWCAPS - NumSlices:1      SliceCountFuse:0x1
[   27.203846]: [IGPU] HWCAPS - NumSlices:1      SliceCountFuse:0x1
[   27.203847]: [IGPU] HWCAPS - NumSubSlices:27   SubSliceCountFuse:0x1f
[   27.203850]: [IGPU] HWCAPS - NumSubSlices:27   SubSliceCountFuse:0x1f
[   27.203851]: [IGPU] HWCAPS - MaxEUPerSubSlice:8   EUDisableFuses:0x0  ExecutionUnitCount:216
[   27.203855]: [IGPU] HWCAPS - MaxEUPerSubSlice:8   EUDisableFuses:0x0  ExecutionUnitCount:216
[   27.203856]: [IGPU] HWCAPS - ERROR: GPU Sku (9) is invalid for 2 Slices x 8 SubSlice configuration!
[   27.203867]: [IGPU] HWCAPS - ERROR: GPU Sku (9) is invalid for 2 Slices x 8 SubSlice configuration!
[   27.203869]: [IGPU] HWCAPS - TEMP HACK: Forcing GPU Sku to 1
[   27.203872]: [IGPU] HWCAPS - TEMP HACK: Forcing GPU Sku to 1
[   27.203873]: [IGPU] HWCAPS - GPU Sku: ICL GT2 HP
[   27.203875]: [IGPU] HWCAPS - GPU Sku: ICL GT2 HP
[   27.203877]: [IGPU] HWCAPS - L3BankCount: 8
[   27.203878]: [IGPU] HWCAPS - L3BankCount: 8
[   27.204328]: [IGPU] Ring Size: 32 KB
[   27.204331]: [IGPU] Ring Size: 32 KB
[   27.204350]: [IGPU] Graphics Scheduler Preemption Enabled!
[   27.204352]: [IGPU] Graphics Scheduler Preemption Enabled!
[   27.204353]: [IGPU] Setting preemptionDelayIntervalUS to 160 microseconds
[   27.204356]: [IGPU] Setting preemptionDelayIntervalUS to 160 microseconds
[   27.204357]: [IGPU] Setting preemptionTimerIntervalUS to 2000 microseconds
[   27.204360]: [IGPU] Setting preemptionTimerIntervalUS to 2000 microseconds
[   27.204362]: [IGPU] Will fallback to host-side scheduling if graphics firmware fails to load
[   27.204364]: [IGPU] Will fallback to host-side scheduling if graphics firmware fails to load
[   27.204366]: [IGPU] Scheduler Tail Coalescing Enabled.
[   27.204368]: [IGPU] Scheduler Tail Coalescing Enabled.
[   27.204369]: [IGPU] Scheduler Page Fault Handling Enabled.
[   27.204371]: [IGPU] Scheduler Page Fault Handling Enabled.
[   27.204372]: [IGPU] Scheduler Single Channel Index Disabled
[   27.204374]: [IGPU] Scheduler Single Channel Index Disabled
[   27.204376]: [IGPU] Scheduler Channel Wait For Complete Disabled
[   27.204378]: [IGPU] Scheduler Channel Wait For Complete Disabled
[   27.204380]: [IGPU] Scheduler: Process CSB using HWS.
[   27.204382]: [IGPU] Scheduler: Process CSB using HWS.
[   27.204383]: [IGPU] Scheduler: PM notify enabled
[   27.204385]: [IGPU] Scheduler: PM notify enabled
[   27.204393]: [IGPU] Selected Apple Firmware Scheduler
[   27.204395]: [IGPU] Selected Apple Firmware Scheduler
[   27.245902]: [IGPU] Detecting Emulator Mode ... [False]
[   27.245907]: [IGPU] Detecting Emulator Mode ... [False]
[   27.245915]: [IGPU] Scheduler: Multiple channel indexes per command streamer
[   27.245917]: [IGPU] Scheduler: Multiple channel indexes per command streamer
[   27.245917]: [IGPU] Scheduler: Process CSB using HWS.
[   27.245919]: [IGPU] Scheduler: Process CSB using HWS.
[   27.245919]: [IGPU] Scheduler: PM notify enabled
[   27.245921]: [IGPU] Scheduler: PM notify enabled
[   27.245921]: [IGPU] Graphics Address: PPGTT, Separate Address Space
[   27.245923]: [IGPU] Graphics Address: PPGTT, Separate Address Space
[   27.245924]: [IGPU] MultiForceWake Enabled: Using 3D Driver
[   27.245925]: [IGPU] MultiForceWake Enabled: Using 3D Driver
[   27.245926]: [IGPU] POSH Disabled
[   27.245926]: [IGPU] POSH Disabled
[   27.245927]: [IGPU] Render Compression Enabled.
[   27.245928]: [IGPU] Render Compression Enabled.
[   27.245929]: [IGPU] Render Compression for IOSurface is Enabled.
[   27.245930]: [IGPU] Render Compression for IOSurface is Enabled.
[   27.253790]: [IGPU] Begin Gfx firmware load process
[   27.253794]: [IGPU] Begin Gfx firmware load process
[   27.253796]: [IGPU]    ForceWake Multithread = 0x30002
[   27.253798]: [IGPU]    ForceWake Multithread = 0x30002
[   27.253800]: [IGPU]    CONFIG0 (0xD00)       = 0x80000014
[   27.253803]: [IGPU]    CONFIG0 (0xD00)       = 0x80000014
[   27.253804]: [IGPU]    GT_THREAD_STATUS      = 0x40030000
[   27.253806]: [IGPU]    GT_THREAD_STATUS      = 0x40030000
[   27.253806]: [IGPU]    Doing retry #0
[   27.253808]: [IGPU]    Doing retry #0
[   27.263676]: [AGPM][INFO ][CONTROLLER  ][createAGPMClass         ] gpuDict IGPU
[   27.263684]: [AGPM][INFO ][CONTROLLER  ][createAGPMClass         ] build gpuDict by GPU IGPU.
[   27.312979]: HE2N_Key Does Not Exist, use kSMCPStatesIGPU for Internal GPU
[   27.312980]: HE2N_Key Does Not Exist, use kSMCPStatesIGPU for Internal GPU
[   27.313037]: [AGPM][INFO ][CONTROLLER  ][start                   ] GPU = IGPU Initialized, Control ID 16
[   28.944078]: ifnet_ioctl_event_callback:7491 en0 ifnet_ioctl returned 102 for ioctl 2149607729bpf0 attached to en0ifnet_ioctl_event_callback:7491 en0 ifnet_ioctl returned 102 for ioctl 2149607729[IGPU] Graphics Firmware Version: 0.0.0.0
[   29.044738]: [IGPU] Graphics Firmware Version: 0.0.0.0
[   29.044813]: [IGPU] Failed to load graphics firmware binary, STATUS = 0x840000EC
[   29.044823]: [IGPU] Failed to load graphics firmware binary, STATUS = 0x840000EC
[   29.044982]: [IGPU] Failed to initialize graphics firmware.
[   29.044990]: [IGPU] Failed to initialize graphics firmware.
[   29.045021]: [IGPU] Failed to start graphics engine
[   29.045027]: [IGPU] Failed to start graphics engine
[   29.045045]: [IGPU] Request to send Host -> Gfx firmware message when the firmware channel is not active!
[   29.045053]: [IGPU] Request to send Host -> Gfx firmware message when the firmware channel is not active!
[   29.045057]: [IGPU] Failed to send wait-for-idle request to firmware
[   29.045062]: [IGPU] Failed to send wait-for-idle request to firmware
Edited by shl628
Link to comment
Share on other sites

4 hours ago, Mastachief said:

Can I use any other properties, device-id etc, or only "AAPL,ig-platform-id" for now,

 

I originally disabled the PciRoot(0x0)/Pci(0x2,0x0) key itself while doing my inital first tests with nblue on SOnoma, I was using MacbookPro16,2 though,

 

image.png.a4f69343471505af947cad139d9a3f86.png

 

When trying AAPL,ig-platform-id - 0000538A with macbookpro14,1 with debug=0x100 keepsyms=1 -vi2c-force-polling -allow3d  as boot arguments, i get a big stop sign, im guessing thats because im trying to boot sonoma with macbookpro14,1

 

Also are you using any acpi patches, also are you using the emulate option in opencore or are you using lilucpu=X?

 

image.thumb.png.ba028ee41a1120c3fade13a3f57e58ad.png

 

usually when you are emulating a specific igpu, you use the generation processor its on, or can i get away with cometlake or icelake emulation?

 

Edit:

when using Macbookpro16,2 and nblue, i get the below kp, i had disabled applealc and intelbluetooth and weg already (those are the main lilu plugins), dont have broadcom kexts, it says its apple smc thats causing the kp, but virtualsmc is need in order to boot, and the smc plugins might be making the calls. those are like Im smcbattermanagerkext etc,  I could be wrong.....

20240316_211411.thumb.jpg.fe6811118ec65fab02bf1ee0205a9df4.jpg

 

 

 

In my history I found intel graphics dependency on some SMC keys different on SMBIOS. I added these keys into FakeSMC and obtained the result. If this is the similar case then we need a new development.

Link to comment
Share on other sites

Which Specific Logs?

 

heres a few commands from ubuntu, xrandr, there is also the backlight stepping information from the i915 driver, teh value increase as i started the backlight at the lowest and recorded each step i made. the intel_reg value at 0x000c8254 doesnt change while these steps are generated.

 

ubuntu@ubuntu:~$ xrandr
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
   1920x1080     60.02*+  40.02  
   1680x1050     60.02  
   1400x1050     60.02  
   1600x900      60.02  
   1280x1024     60.02  
   1400x900      60.02  
   1280x960      60.02  
   1440x810      60.02  
   1368x768      60.02  
   1280x800      60.02  
   1280x720      60.02  
   1024x768      60.02  
   960x720       60.02  
   928x696       60.02  
   896x672       60.02  
   1024x576      60.02  
   960x600       60.02  
   960x540       60.02  
   800x600       60.02  
   840x525       60.02  
   864x486       60.02  
   700x525       60.02  
   800x450       60.02  
   640x512       60.02  
   700x450       60.02  
   640x480       60.02  
   720x405       60.02  
   684x384       60.02  
   640x360       60.02  
   512x384       60.02  
   512x288       60.02  
   480x270       60.02  
   400x300       60.02  
   432x243       60.02  
   320x240       60.02  
   360x202       60.02  
   320x180       60.02  
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
ubuntu@ubuntu:~$ xrandr --verbose
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
eDP-1 connected primary 1920x1080+0+0 (0x47) normal (normal left inverted right x axis y axis) 344mm x 194mm
	Identifier: 0x42
	Timestamp:  16496
	Subpixel:   unknown
	Gamma:      1.0:1.0:1.0
	Brightness: 1.0
	Clones:    
	CRTC:       0
	CRTCs:      0 1 2 3
	Transform:  1.000000 0.000000 0.000000
	            0.000000 1.000000 0.000000
	            0.000000 0.000000 1.000000
	           filter: 
	EDID: 
		00ffffffffffff0030e41e0700000000
		001f01049522137803b385995e5b8c26
		1b505400000001010101010101010101
		0101010101012e3680a070381f403020
		350058c21000001a1f2480a070381f40
		3020350058c21000001a000000000000
		00000000000000000000000000000002
		000c3aff0a3c7d1214247d0000000001
	vrr_capable: 0 
		range: (0, 1)
	Colorspace: Default 
		supported: Default, RGB_Wide_Gamut_Fixed_Point, RGB_Wide_Gamut_Floating_Point, opRGB, DCI-P3_RGB_D65, BT2020_RGB, BT601_YCC, BT709_YCC, XVYCC_601, XVYCC_709, SYCC_601, opYCC_601, BT2020_CYCC, BT2020_YCC
	max bpc: 12 
		range: (6, 12)
	Broadcast RGB: Automatic 
		supported: Automatic, Full, Limited 16:235
	panel orientation: Normal 
		supported: Normal, Upside Down, Left Side Up, Right Side Up
	scaling mode: Full aspect 
		supported: Full, Center, Full aspect
	link-status: Good 
		supported: Good, Bad
	CONNECTOR_ID: 308 
		supported: 308
	non-desktop: 0 
		range: (0, 1)
  1920x1080 (0x47) 138.700MHz +HSync -VSync *current +preferred
        h: width  1920 start 1968 end 2000 total 2080 skew    0 clock  66.68KHz
        v: height 1080 start 1083 end 1088 total 1111           clock  60.02Hz
  1920x1080 (0x48) 92.470MHz +HSync -VSync
        h: width  1920 start 1968 end 2000 total 2080 skew    0 clock  44.46KHz
        v: height 1080 start 1083 end 1088 total 1111           clock  40.02Hz
  1680x1050 (0x49) 119.272MHz +HSync -VSync
        h: width  1680 start 1728 end 1760 total 1840 skew    0 clock  64.82KHz
        v: height 1050 start 1053 end 1059 total 1080           clock  60.02Hz
  1400x1050 (0x4a) 122.091MHz +HSync +VSync
        h: width  1400 start 1488 end 1640 total 1880 skew    0 clock  64.94KHz
        v: height 1050 start 1052 end 1064 total 1082           clock  60.02Hz
  1600x900 (0x4b) 97.818MHz +HSync -VSync
        h: width  1600 start 1648 end 1680 total 1760 skew    0 clock  55.58KHz
        v: height  900 start  903 end  908 total  926           clock  60.02Hz
  1280x1024 (0x4c) 108.001MHz +HSync +VSync
        h: width  1280 start 1328 end 1440 total 1688 skew    0 clock  63.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  60.02Hz
  1400x900 (0x4d) 86.703MHz +HSync -VSync
        h: width  1400 start 1448 end 1480 total 1560 skew    0 clock  55.58KHz
        v: height  900 start  903 end  913 total  926           clock  60.02Hz
  1280x960 (0x4e) 108.036MHz +HSync +VSync
        h: width  1280 start 1376 end 1488 total 1800 skew    0 clock  60.02KHz
        v: height  960 start  961 end  964 total 1000           clock  60.02Hz
  1440x810 (0x4f) 151.990MHz +HSync -VSync DoubleScan
        h: width  1440 start 1464 end 1480 total 1520 skew    0 clock  99.99KHz
        v: height  810 start  811 end  814 total  833           clock  60.02Hz
  1368x768 (0x50) 72.451MHz +HSync -VSync
        h: width  1368 start 1416 end 1448 total 1528 skew    0 clock  47.42KHz
        v: height  768 start  771 end  781 total  790           clock  60.02Hz
  1280x800 (0x51) 71.131MHz +HSync -VSync
        h: width  1280 start 1328 end 1360 total 1440 skew    0 clock  49.40KHz
        v: height  800 start  803 end  809 total  823           clock  60.02Hz
  1280x720 (0x52) 64.044MHz +HSync -VSync
        h: width  1280 start 1328 end 1360 total 1440 skew    0 clock  44.48KHz
        v: height  720 start  723 end  728 total  741           clock  60.02Hz
  1024x768 (0x53) 65.017MHz -HSync -VSync
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock  48.38KHz
        v: height  768 start  771 end  777 total  806           clock  60.02Hz
  960x720 (0x54) 117.039MHz -HSync +VSync DoubleScan
        h: width   960 start 1024 end 1128 total 1300 skew    0 clock  90.03KHz
        v: height  720 start  720 end  722 total  750           clock  60.02Hz
  928x696 (0x55) 109.095MHz -HSync +VSync DoubleScan
        h: width   928 start  976 end 1088 total 1264 skew    0 clock  86.31KHz
        v: height  696 start  696 end  698 total  719           clock  60.02Hz
  896x672 (0x56) 102.410MHz -HSync +VSync DoubleScan
        h: width   896 start  960 end 1060 total 1224 skew    0 clock  83.67KHz
        v: height  672 start  672 end  674 total  697           clock  60.02Hz
  1024x576 (0x57) 42.141MHz +HSync -VSync
        h: width  1024 start 1072 end 1104 total 1184 skew    0 clock  35.59KHz
        v: height  576 start  579 end  584 total  593           clock  60.02Hz
  960x600 (0x58) 77.027MHz +HSync -VSync DoubleScan
        h: width   960 start  984 end 1000 total 1040 skew    0 clock  74.06KHz
        v: height  600 start  601 end  604 total  617           clock  60.02Hz
  960x540 (0x59) 37.375MHz +HSync -VSync
        h: width   960 start 1008 end 1040 total 1120 skew    0 clock  33.37KHz
        v: height  540 start  543 end  548 total  556           clock  60.02Hz
  800x600 (0x5a) 38.413MHz +HSync +VSync
        h: width   800 start  824 end  896 total 1024 skew    0 clock  37.51KHz
        v: height  600 start  601 end  603 total  625           clock  60.02Hz
  840x525 (0x5b) 59.636MHz +HSync -VSync DoubleScan
        h: width   840 start  864 end  880 total  920 skew    0 clock  64.82KHz
        v: height  525 start  526 end  529 total  540           clock  60.02Hz
  864x486 (0x5c) 30.730MHz +HSync -VSync
        h: width   864 start  912 end  944 total 1024 skew    0 clock  30.01KHz
        v: height  486 start  489 end  494 total  500           clock  60.02Hz
  700x525 (0x5d) 61.045MHz +HSync +VSync DoubleScan
        h: width   700 start  744 end  820 total  940 skew    0 clock  64.94KHz
        v: height  525 start  526 end  532 total  541           clock  60.02Hz
  800x450 (0x5e) 48.909MHz +HSync -VSync DoubleScan
        h: width   800 start  824 end  840 total  880 skew    0 clock  55.58KHz
        v: height  450 start  451 end  454 total  463           clock  60.02Hz
  640x512 (0x5f) 54.000MHz +HSync +VSync DoubleScan
        h: width   640 start  664 end  720 total  844 skew    0 clock  63.98KHz
        v: height  512 start  512 end  514 total  533           clock  60.02Hz
  700x450 (0x60) 43.351MHz +HSync -VSync DoubleScan
        h: width   700 start  724 end  740 total  780 skew    0 clock  55.58KHz
        v: height  450 start  451 end  456 total  463           clock  60.02Hz
  640x480 (0x61) 25.208MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.51KHz
        v: height  480 start  490 end  492 total  525           clock  60.02Hz
  720x405 (0x62) 22.130MHz +HSync -VSync
        h: width   720 start  768 end  800 total  880 skew    0 clock  25.15KHz
        v: height  405 start  408 end  413 total  419           clock  60.02Hz
  684x384 (0x63) 36.225MHz +HSync -VSync DoubleScan
        h: width   684 start  708 end  724 total  764 skew    0 clock  47.41KHz
        v: height  384 start  385 end  390 total  395           clock  60.02Hz
  640x360 (0x64) 17.958MHz +HSync -VSync
        h: width   640 start  688 end  720 total  800 skew    0 clock  22.45KHz
        v: height  360 start  363 end  368 total  374           clock  60.02Hz
  512x384 (0x65) 32.508MHz -HSync -VSync DoubleScan
        h: width   512 start  524 end  592 total  672 skew    0 clock  48.38KHz
        v: height  384 start  385 end  388 total  403           clock  60.02Hz
  512x288 (0x66) 21.034MHz +HSync -VSync DoubleScan
        h: width   512 start  536 end  552 total  592 skew    0 clock  35.53KHz
        v: height  288 start  289 end  292 total  296           clock  60.02Hz
  480x270 (0x67) 18.687MHz +HSync -VSync DoubleScan
        h: width   480 start  504 end  520 total  560 skew    0 clock  33.37KHz
        v: height  270 start  271 end  274 total  278           clock  60.02Hz
  400x300 (0x68) 19.175MHz +HSync +VSync DoubleScan
        h: width   400 start  412 end  448 total  512 skew    0 clock  37.45KHz
        v: height  300 start  300 end  301 total  312           clock  60.02Hz
  432x243 (0x69) 15.365MHz +HSync -VSync DoubleScan
        h: width   432 start  456 end  472 total  512 skew    0 clock  30.01KHz
        v: height  243 start  244 end  247 total  250           clock  60.02Hz
  320x240 (0x6a) 12.580MHz -HSync -VSync DoubleScan
        h: width   320 start  328 end  376 total  400 skew    0 clock  31.45KHz
        v: height  240 start  245 end  246 total  262           clock  60.02Hz
  360x202 (0x6b) 11.038MHz +HSync -VSync DoubleScan
        h: width   360 start  384 end  400 total  440 skew    0 clock  25.09KHz
        v: height  202 start  204 end  206 total  209           clock  60.02Hz
  320x180 (0x6c)  8.979MHz +HSync -VSync DoubleScan
        h: width   320 start  344 end  360 total  400 skew    0 clock  22.45KHz
        v: height  180 start  181 end  184 total  187           clock  60.02Hz
HDMI-1 disconnected (normal left inverted right x axis y axis)
	Identifier: 0x43
	Timestamp:  16496
	Subpixel:   unknown
	Clones:    
	CRTCs:      0 1 2 3
	Transform:  1.000000 0.000000 0.000000
	            0.000000 1.000000 0.000000
	            0.000000 0.000000 1.000000
	           filter: 
	HDCP Content Type: HDCP Type0 
		supported: HDCP Type0, HDCP Type1
	Content Protection: Undesired 
		supported: Undesired, Desired, Enabled
	max bpc: 12 
		range: (8, 12)
	content type: No Data 
		supported: No Data, Graphics, Photo, Cinema, Game
	Colorspace: Default 
		supported: Default, SMPTE_170M_YCC, BT709_YCC, XVYCC_601, XVYCC_709, SYCC_601, opYCC_601, opRGB, BT2020_CYCC, BT2020_RGB, BT2020_YCC, DCI-P3_RGB_D65, DCI-P3_RGB_Theater
	aspect ratio: Automatic 
		supported: Automatic, 4:3, 16:9
	Broadcast RGB: Automatic 
		supported: Automatic, Full, Limited 16:235
	audio: auto 
		supported: force-dvi, off, auto, on
	link-status: Good 
		supported: Good, Bad
	CONNECTOR_ID: 317 
		supported: 317
	non-desktop: 0 
		range: (0, 1)
DP-1 disconnected (normal left inverted right x axis y axis)
	Identifier: 0x44
	Timestamp:  16496
	Subpixel:   unknown
	Clones:    
	CRTCs:      0 1 2 3
	Transform:  1.000000 0.000000 0.000000
	            0.000000 1.000000 0.000000
	            0.000000 0.000000 1.000000
	           filter: 
	HDCP Content Type: HDCP Type0 
		supported: HDCP Type0, HDCP Type1
	Content Protection: Undesired 
		supported: Undesired, Desired, Enabled
	vrr_capable: 0 
		range: (0, 1)
	Colorspace: Default 
		supported: Default, RGB_Wide_Gamut_Fixed_Point, RGB_Wide_Gamut_Floating_Point, opRGB, DCI-P3_RGB_D65, BT2020_RGB, BT601_YCC, BT709_YCC, XVYCC_601, XVYCC_709, SYCC_601, opYCC_601, BT2020_CYCC, BT2020_YCC
	max bpc: 12 
		range: (6, 12)
	Broadcast RGB: Automatic 
		supported: Automatic, Full, Limited 16:235
	audio: auto 
		supported: force-dvi, off, auto, on
	subconnector: Unknown 
		supported: Unknown, VGA, DVI-D, HDMI, DP, Wireless, Native
	link-status: Good 
		supported: Good, Bad
	CONNECTOR_ID: 326 
		supported: 326
	non-desktop: 0 
		range: (0, 1)
DP-2 disconnected (normal left inverted right x axis y axis)
	Identifier: 0x45
	Timestamp:  16496
	Subpixel:   unknown
	Clones:    
	CRTCs:      0 1 2 3
	Transform:  1.000000 0.000000 0.000000
	            0.000000 1.000000 0.000000
	            0.000000 0.000000 1.000000
	           filter: 
	HDCP Content Type: HDCP Type0 
		supported: HDCP Type0, HDCP Type1
	Content Protection: Undesired 
		supported: Undesired, Desired, Enabled
	vrr_capable: 0 
		range: (0, 1)
	Colorspace: Default 
		supported: Default, RGB_Wide_Gamut_Fixed_Point, RGB_Wide_Gamut_Floating_Point, opRGB, DCI-P3_RGB_D65, BT2020_RGB, BT601_YCC, BT709_YCC, XVYCC_601, XVYCC_709, SYCC_601, opYCC_601, BT2020_CYCC, BT2020_YCC
	max bpc: 12 
		range: (6, 12)
	Broadcast RGB: Automatic 
		supported: Automatic, Full, Limited 16:235
	audio: auto 
		supported: force-dvi, off, auto, on
	subconnector: Unknown 
		supported: Unknown, VGA, DVI-D, HDMI, DP, Wireless, Native
	link-status: Good 
		supported: Good, Bad
	CONNECTOR_ID: 336 
		supported: 336
	non-desktop: 0 
		range: (0, 1)
ubuntu@ubuntu:~$ cd sys
bash: cd: sys: No such file or directory
ubuntu@ubuntu:~$ cd /sys
ubuntu@ubuntu:/sys$ ls
block  bus  class  dev  devices  firmware  fs  hypervisor  kernel  module  power
ubuntu@ubuntu:/sys$ cd class
ubuntu@ubuntu:/sys/class$ ls
accel        devfreq         firmware-attributes  iommu     nd              ppdev         retimer       thermal             virtio-ports
ata_device   devfreq-event   gpio                 leds      net             ppp           rfkill        tpm                 vtconsole
ata_link     devlink         graphics             lirc      nvme            pps           rtc           tpmrm               wakeup
ata_port     dma             hidraw               mdio_bus  nvme-generic    printer       scsi_device   tty                 watchdog
backlight    dma_heap        hwmon                mei       nvme-subsystem  ptp           scsi_disk     typec               wmi_bus
bdi          dmi             i2c-adapter          mem       pci_bus         pwm           scsi_generic  typec_mux           wwan
block        drm             i2c-dev              misc      pci_epc         rapidio_port  scsi_host     usb_power_delivery
bluetooth    drm_dp_aux_dev  ieee80211            mmc_host  phy             rc            sound         usb_role
bsg          extcon          input                msr       power_supply    regulator     spi_master    vc
devcoredump  firmware        intel_scu_ipc        mtd       powercap        remoteproc    spi_slave     video4linux
ubuntu@ubuntu:/sys/class$ cd backlight
ubuntu@ubuntu:/sys/class/backlight$ ls
intel_backlight
ubuntu@ubuntu:/sys/class/backlight$ cd intel_backlight
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ ls
actual_brightness  bl_power  brightness  device  max_brightness  power  scale  subsystem  type  uevent
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
960
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
5712
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
10463
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
15216
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
19968
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
24720
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
29472
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
34224
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
38976
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
43728
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
48480
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
53232
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
57984
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
62736
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
67488
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
72240
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
76992
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
81744
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
86496
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
91249
ubuntu@ubuntu:/sys/class/backlight/intel_backlight$ cat actual_brightness
96000                               

Heres the Intel_reg dump, my card is the 9A49, same as the OP

 

intel_reg dump.txt

 

These are a few test via Terminal in Buntu 22.04, writing most of these values turned off the backlight or made it go dim, im online working tonight, so I can run the test you need in another 3 hours once im settle down. Or most of tomorrow its my day off.

ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg read 0xc8254
                                    (0x000c8254): 0x00017700 (freq 1, cycle 30464)
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg read 0xc8254
                                    (0x000c8254): 0x00017700 (freq 1, cycle 30464)
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg write 0xc8254 0x00027700
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg write 0xc8254 0x00047700
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg write 0xc8254 0x00017700
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg write 0xc8254 0x00027700
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg write 0xc8254 0x00017700
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg write 0xc8254 0x00017700
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg write 0xc8254 0x00027700
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg write 0xc8254 0x00037700
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg write 0xc8254 0x00017700
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg write 0xc8254 0x00027700
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg write 0xc8254 0x00012700
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg write 0xc8254 0x00017700
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg read 0xc8255 0x00012700
                                    (0x000c8255): 0xfd000177
                                    (0x00012700): 0x00000000
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg read 0xc8253 0x00012700
                                    (0x000c8253): 0x0000fd80
                                    (0x00012700): 0x00000000
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg read 0xc8256 0x00012700
                                    (0x000c8256): 0x00fd0001
                                    (0x00012700): 0x00000000
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg read 0xc8257 0x00012700
                                    (0x000c8257): 0x0000fd00
                                    (0x00012700): 0x00000000
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg read 0xc8258 0x00012700
                                    (0x000c8258): 0x0000b6d3
                                    (0x00012700): 0x00000000
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg read 0xc8253 0x00012700
                                    (0x000c8253): 0x0000fd80
                                    (0x00012700): 0x00000000
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg read 0xc8254
                                    (0x000c8254): 0x00017700 (freq 1, cycle 30464)
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg read 0xc8255
                                    (0x000c8255): 0xfd000177
ubuntu@ubuntu:/etc/X11/xorg.conf.d$ sudo intel_reg read 0xc8255
                                    (0x000c8255): 0xfd000177

Ice:Tiger Lake Similarities.xlsx

Edited by Mastachief
Reg hex in first Paragraph was cut off.
Link to comment
Share on other sites

6 hours ago, jalavoui said:

can any post linux logs ?

 

I am attaching the Dmesg log and all logs in the /var/log directory.

[   10.442596] i915 0000:00:02.0: vgaarb: deactivate vga console
[   10.442646] i915 0000:00:02.0: [drm] Using Transparent Hugepages
[   10.443589] i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[   10.444757] i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/tgl_dmc_ver2_12.bin (v2.12)
[   10.460941] i915 0000:00:02.0: [drm] Protected Xe Path (PXP) protected content support initialized

I searched for tgl_dmc_ver2_12.bin and found the site below.

Index of /sources/linux-firmware/i915 (linuxfromscratch.org)

 

Dmesg Logs.txt

var-log.zip

Link to comment
Share on other sites

this can be set in the info.plist

 

if (callbackIGFX->fwLoadMode != FW_APPLE) {
        // 1 - Automatic scheduler (Apple -> fallback to disabled)
        // 2 - Force disable via plist (removed as of 10.15)
        // 3 - Apple Scheduler
        // 4 - Reference Scheduler
        // 5 - Host Preemptive (as of 10.15)
        uint32_t scheduler;
        if (callbackIGFX->fwLoadMode == FW_GENERIC)
            scheduler = 4;
        else if (getKernelVersion() >= KernelVersion::Catalina)
            scheduler = 5;
        else
            scheduler = 2;
        auto num = OSNumber::withNumber(scheduler, 32);
        if (num) {
            newDevDict->setObject("GraphicsSchedulerSelect", num);
            num->release();
        }
    }

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

Posted (edited)
2 hours ago, jalavoui said:

this can be set in the info.plist

 

if (callbackIGFX->fwLoadMode != FW_APPLE) {
        // 1 - Automatic scheduler (Apple -> fallback to disabled)
        // 2 - Force disable via plist (removed as of 10.15)
        // 3 - Apple Scheduler
        // 4 - Reference Scheduler
        // 5 - Host Preemptive (as of 10.15)
        uint32_t scheduler;
        if (callbackIGFX->fwLoadMode == FW_GENERIC)
            scheduler = 4;
        else if (getKernelVersion() >= KernelVersion::Catalina)
            scheduler = 5;
        else
            scheduler = 2;
        auto num = OSNumber::withNumber(scheduler, 32);
        if (num) {
            newDevDict->setObject("GraphicsSchedulerSelect", num);
            num->release();
        }
    }

 

1. Test changing the GraphicsSchedulerSelect value without igfxfw=2

 

1-1. GraphicsSchedulerSelect = 0 (Default, unmodified NBlue's Info.plist)
Unexpected context status buffer entry kernel panic.

 

1-2. GraphicSchedulerSelect = 1
Unexpected context status buffer entry kernel panic.

 

1-3. GraphicSchedulerSelect = 2
Unexpected context status buffer entry kernel panic.

 

1-4. GraphicSchedulerSelect = 3
Unexpected context status buffer entry kernel panic.

 

1-5. GraphicSchedulerSelect = 4
Unexpected context status buffer entry kernel panic.

 

1-6. GraphicSchedulerSelect = 5
Unexpected context status buffer entry kernel panic.

 

2. Test changing the GraphicsSchedulerSelect value with igfxfw=2 applied

 

2-1. GraphicsSchedulerSelect = 0 (Default, unmodified NBlue's Info.plist)
It boots, but logs show firmware load failure and graphics acceleration does not work.

Same as IGPU log in Test6 result above.

 

2-2. GraphicSchedulerSelect = 1
Stuck on AuxKC loading process during boot.
Forced restart shortcut (Ctrl + Command + Power Button) does not work.

 

2-3. GraphicSchedulerSelect = 2
During booting, AuxKC loading is completed and IGPU log output stops.
I think it caused an "Unsupported GraphicsSchedulerSelect=2 kernel panic".
Forced restart shortcut (Ctrl + Command + Power Button) does not work.

 

2-4. GraphicSchedulerSelect = 3
It boots, but logs show firmware load failure and graphics acceleration does not work.

Same as IGPU log in Test6 result above.

 

2-5. GraphicSchedulerSelect = 4
Stuck on AuxKC loading process during boot.
Forced restart shortcut (Ctrl + Command + Power Button) does not work.

 

2-6. GraphicSchedulerSelect = 5
Unexpected context status buffer entry kernel panic.

Edited by shl628
  • Like 1
Link to comment
Share on other sites

check 

 

try boot linux with that param and get /var/log/syslog

output should look like this

 

[ 2.014699] Setting dangerous option enable_guc - tainting kernel [ 2.019971]

[drm] Finished loading DMC firmware i915/kbl_dmc_ver1_04.bin (v1.4) [ 2.030651]

[drm] HuC: Loaded firmware i915/kbl_huc_ver02_00_1810.bin (version 2.0) [ 2.040648]

[drm] GuC: Loaded firmware i915/kbl_guc_ver9_39.bin (version 9.39) [ 2.051850] i915 0000:00:02.0: GuC firmware version 9.39 [ 2.051850] i915 0000:00:02.0: GuC submission enabled [ 2.051851] i915 0000:00:02.0: HuC enabled

 

delete syslog if it gets huge and reboot linux

 

we need to load fwLoadMode == FW_GENERIC. i changed the info.plist but atm no way to force load tgl_guc_70.1.1.bin

 

__int64 __fastcall IGScheduler::canLoadFirmware(IGScheduler *this, IntelAccelerator *a2)
{
  int v2; // eax

  v2 = (*((_DWORD *)this + 1136) >> 22) & 7;
  if ( v2 == 4 )
    return IGScheduler4::canLoadFirmware(this, a2);
  if ( v2 == 3 )
    return IGGuC::canLoadFirmware(this, a2);
  return 0LL;
}

Edited by jalavoui
Link to comment
Share on other sites

See attached.

 

My syslog was over 10Mb so its here, I didnt get the "Setting dangerous option enable_guc - tainting kernel" Warning, maybe i should modify the boot entry a little more?

 

https://www.mediafire.com/file/avbh7yvwx7c2fz0/syslog/file

 

there were some other files in the /var/log folder, theyre here:

 

https://www.mediafire.com/folder/6mgbdnf54xvfl/Buntu

 

i used live ubuntu from a USB, i just modified the grub config to the below for 22.04

 

set timeout=0

loadfont unicode

set menu_color_normal=white/black
set menu_color_highlight=black/light-gray

menuentry "Ubuntu" {
    set gfxpayload=keep
    linux    /casper/vmlinuz persistent file=/cdrom/preseed/ubuntu.seed ro quiet splash drm.debug=0x14
    initrd   /casper/initrd
} 

menuentry "Try or Install Ubuntu" {
	set gfxpayload=keep
	linux	/casper/vmlinuz persistent file=/cdrom/preseed/ubuntu.seed  quiet splash --- 
	initrd	/casper/initrd
}
menuentry "Ubuntu (safe graphics)" {
	set gfxpayload=keep
	linux	/casper/vmlinuz nomodeset persistent file=/cdrom/preseed/ubuntu.seed  quiet splash --- 
	initrd	/casper/initrd
}
menuentry "OEM install (for manufacturers)" {
	set gfxpayload=keep
	linux	/casper/vmlinuz persistent file=/cdrom/preseed/ubuntu.seed only-ubiquity oem-config/enable=true quiet splash --- 
	initrd	/casper/initrd
}
grub_platform
if [ "$grub_platform" = "efi" ]; then
menuentry 'Boot from next volume' {
	exit 1
}
menuentry 'UEFI Firmware Settings' {
	fwsetup
}
else
menuentry 'Test memory' {
	linux16 /boot/memtest86+.bin
}
fi

I'll install Ubuntu onto a second ssd and then add that as the root in the grub.cfg later, seems there is another way to do it.

Edited by Mastachief
Grub entry added
Link to comment
Share on other sites

[CONNECTOR:308:eDP-1] Supported Monitor Refresh rate range is 0 Hz - 0 Hz

this is kinda my macos hack - works for some displays but i dont like it

 

this is ida pro bad dissasemble

GScheduler4 *__fastcall IGScheduler::create(IGScheduler4 *this, IOGraphicsAccelerator2 *a2)
{
  int v2; // eax

  v2 = (*((_DWORD *)this + 1136) >> 22) & 7;
  switch ( v2 )
  {
    case 5:
      return (IGScheduler4 *)IGScheduler5::withAccelerator(this, a2);
    case 4:
      return IGScheduler4::withAccelerator(this, a2);
    case 3:
      return (IGScheduler4 *)IGGuC::withAccelerator(this, a2);
  }
  IGScheduler::create(this, a2);
  return 0LL;

 

 

boot flags for framebuffer mode:

-v

boot flags for graphics crash mode:

-v -allow3d

 

 

 

Edited by jalavoui
Link to comment
Share on other sites

Using nblue Bin on IDA or Hexfiend?

 

dont see that in nblue Master

 

Also my Video Bios got corrupted somehow, even after reinstalling Ventura, the same issue persist, interesting.

 

I cant even boot the ventura 13.6.5 installer using the same EFI i had created before,

 

Resetting bios didn't fix it, I had to re-install my bios via recovery

Edited by Mastachief
Link to comment
Share on other sites

https://elixir.bootlin.com/linux/v6.8.1/source/drivers/gpu/drm/i915/gt/uc/intel_guc_reg.h#L16

https://elixir.bootlin.com/linux/v6.8.1/source/drivers/gpu/drm/i915/gt/uc/intel_guc.c#L916

 

char __fastcall IGHardwareGuC::loadGuCBinary(IntelAccelerator **acceleratorPtr) {
  unsigned int options; // Previously v2
  IGSharedMappedBuffer *sharedBuffer; // Previously v3
  IGMappedBuffer *mappedBuffer; // Previously v4
  __int64 virtualAddress; // Previously VirtualAddress
  unsigned __int64 upperHalfGPUAddr; // Previously v6
  IntelAccelerator *accelerator; // Previously v7
  _DWORD *registerArray; // Previously v8
  unsigned __int64 registerSettings; // Previously v9
  __int64 indexI; // Previously i
  __int64 indexJ; // Previously j
  __int64 gpuVirtualAddress; // Previously v12
  __int64 registerBase; // Previously v13
  IntelAccelerator *acceleratorBase; // Previously v14
  _DWORD *interruptRegister; // Previously v15
  int registerValue; // Previously v16
  int registerValueUpperByte; // Previously v17
  int timeoutCounter; // Previously v18
  int *statusRegister; // Previously v19
  __int64 wopcmSettings; // Previously v21
  unsigned __int64 wopcmSize; // Previously v22
  unsigned __int64 gpuAddrForMapping; // Previously GPUVirtualAddress

    if ( !IGHardwareGuC::initSchedControl((IGHardwareGuC *)acceleratorPtr) )
    return 0;
  sharedBuffer = IGSharedMappedBuffer::withOptions(
                                 *((IGSharedMappedBuffer **)acceleratorPtr[7] + 42),
                                 (IGAccelTask *)0x61000,
                                 2u,
                                 0,
                                 options);
  mappedBuffer = sharedBuffer;
  if ( !sharedBuffer )
    return mappedBuffer != nullptr;
  virtualAddress = IGSharedMappedBuffer::getVirtualAddress(sharedBuffer);

  MEMORY[0x100EA](virtualAddress, &__KmGen11ICLGuCBinary, 394240LL);

  gpuAddrForMapping = IGMappedBuffer::getGPUVirtualAddress(mappedBuffer);
  upperHalfGPUAddr = HIDWORD(gpuAddrForMapping);

  IntelAccelerator::SafeForceWake(acceleratorPtr[7], 1, 7u);

  accelerator = acceleratorPtr[7];
  registerArray = (_DWORD *)*((_QWORD *)accelerator + 590);

  registerArray[SOFT_SCRATCH(0)] = 1;
  registerArray[UOS_RSA_SCRATCH(0)] = 1;
  registerArray[DMA_ADDR_0_LOW] = 16;

  registerSettings = *(_QWORD *)((char *)accelerator + 4046);

  if ( (registerSettings & 0x80000000) != 0LL )
  {
    registerArray[DMA_CTRL] = 203;
    registerSettings = *(_QWORD *)((char *)accelerator + 4046);
  }
  if ( (registerSettings & 0x100000000LL) != 0 )
  {
    registerArray[DMA_COPY_SIZE] = 0x30FFF;
    registerArray[DMA_GUC_WOPCM_OFFSET] = 500;
    registerSettings = *(_QWORD *)((char *)accelerator + 4046);
  }
  registerArray[GUC_MAX_IDLE_COUNT] = (registerSettings >> 18) & 0x8000 ^ 0x208617;
  registerArray[DMA_GUC_WOPCM_OFFSET] = 511;

  for ( indexI = 0LL; indexI != 6; ++indexI )
    registerArray[indexI + GUC_STATUS] = *(_DWORD *)((char *)acceleratorPtr + indexI * 4 + 140);
  for ( indexJ = 0LL; indexJ != 64; ++indexJ )
    registerArray[indexJ + GUC_STATUS] = *(_DWORD *)((char *)&__KmGen11ICLGuCBinary + indexJ * 4 + 394240);

  registerArray[DMA_ADDR_1_LOW] = 394240;

  gpuVirtualAddress = gpuAddrForMapping;

  registerArray[DMA_ADDR_1_HIGH] = gpuAddrForMapping;
  registerArray[DMA_COPY_SIZE] = (unsigned __int16)upperHalfGPUAddr;
  registerArray[DMA_CTRL] = 0x2000;
  registerArray[DMA_GUC_WOPCM_OFFSET] = 0x70000;

  if ( (*((_BYTE *)accelerator + 4544) & 0x20) != 0 )
    registerArray[GUC_SEND_INTERRUPT] = 3;

  wopcmSize = 0LL;
  wopcmSettings = 0LL;
  IGHardwareGuC::checkWOPCMSettings((__int64)acceleratorPtr, gpuVirtualAddress, &wopcmSettings);

  registerBase = *((_QWORD *)acceleratorPtr[7] + 590);

  *(_DWORD *)(registerBase + GUC_SHIM_CONTROL) = wopcmSettings | 1;
  *(_DWORD *)(registerBase + GUC_WOPCM_SIZE) = ((unsigned int)(wopcmSize / *(_QWORD *)qword_149D4240) << 12) | 1;
  _mm_sfence();

  acceleratorBase = acceleratorPtr[7];

  interruptRegister = (_DWORD *)*((_QWORD *)acceleratorBase + 590);
  interruptRegister[GUC_SEND_INTERRUPT] = 1;

  while ( (interruptRegister[GUC_SEND_INTERRUPT] & 1) != 0 )
    ;

  interruptRegister[DE_GUCRMR] = -65519;
  registerValue = interruptRegister[GUC_BCS_RCS_IER];
  registerValueUpperByte = BYTE1(registerValue);

  if ( BYTE1(registerValue) == 240 )
  {
    // Successful GuC binary load
    IntelAccelerator::SafeForceWake(acceleratorBase, 0, 7u);
    (*(void (__fastcall **)(IGMappedBuffer *))(*(_QWORD *)mappedBuffer + 40LL))(mappedBuffer);
    return mappedBuffer != nullptr;
  }

  timeoutCounter = -15;

  while ( (registerValue & 0xFE) != 160 )
  {
    if ( registerValueUpperByte == 96 )
      break;

    MEMORY[0x10324](&gl_assert_wait_timeout_event, 0LL, 1000LL, 1000LL);

    MEMORY[0x10372](0LL);
    acceleratorBase = acceleratorPtr[7];
    statusRegister = (int *)(*((_QWORD *)acceleratorBase + 590) + 49152LL);
    if ( !++timeoutCounter )
      break;
    registerValue = *statusRegister;
    registerValueUpperByte = (unsigned __int8)BYTE1(*statusRegister);
    if ( registerValueUpperByte == 240 )
    {
      // Successful GuC binary load
      IntelAccelerator::SafeForceWake(acceleratorBase, 0, 7u);
      (*(void (__fastcall **)(IGMappedBuffer *))(*(_QWORD *)mappedBuffer + 40LL))(mappedBuffer);
      return mappedBuffer != nullptr;
    }
  }
  
  // GuC binary load failure
  MEMORY[0x1034E]("\"GUC Binary Load Failure\" @%s:%d", "IGHardwareGuC.cpp", 697LL);
  return IGHardwareGuC::registerCommandTransportBuffers((IGHardwareGuC *)"\"GUC Binary Load Failure\" @%s:%d");
}
static void uc_expand_default_options(struct intel_uc *uc)
{
	struct drm_i915_private *i915 = uc_to_gt(uc)->i915;

	if (i915->params.enable_guc != -1)
		return;

	/* Don't enable GuC/HuC on pre-Gen12 */
	if (GRAPHICS_VER(i915) < 12) {
		i915->params.enable_guc = 0;
		return;
	}

	/* Don't enable GuC/HuC on older Gen12 platforms */
	if (IS_TIGERLAKE(i915) || IS_ROCKETLAKE(i915)) {
		i915->params.enable_guc = 0;
		return;
	}

	/* Intermediate platforms are HuC authentication only */
	if (IS_ALDERLAKE_S(i915) && !IS_RAPTORLAKE_S(i915)) {
		i915->params.enable_guc = ENABLE_GUC_LOAD_HUC;
		return;
	}

	/* Default: enable HuC authentication and GuC submission */
	i915->params.enable_guc = ENABLE_GUC_LOAD_HUC | ENABLE_GUC_SUBMISSION;

	/* XEHPSDV and PVC do not use HuC */
	if (IS_XEHPSDV(i915) || IS_PONTEVECCHIO(i915))
		i915->params.enable_guc &= ~ENABLE_GUC_LOAD_HUC;
}

this means no firmware loading and set GraphicsSchedulerSelect = 5 ?

this linux code is >5.12 version

Edited by jalavoui
Link to comment
Share on other sites

×
×
  • Create New...