acidanthera / bugtracker

Acidanthera Bugtracker
382 stars 44 forks source link

Lilu DeviceInfo class skips detection of AMD iGPUs, causing issues for NootInc/WhateverRed #2232

Closed VisualEhrmanntraut closed 1 year ago

VisualEhrmanntraut commented 1 year ago

Kexts like WhateverGreen which utilise the DeviceInfo class are unable to detect devices which are nested more than 1 level deep/are inside PCI bridges, i.e. PCI0.GPP8.IOPP.VGA_ Problem lies in DeviceInfo::grabDevicesFromPciRoot and DeviceInfo::create

vit9696 commented 1 year ago

Mind submitting a patch? We do not have such systems. Thanks!

VisualEhrmanntraut commented 1 year ago

It looks like I've misunderstood the issue, sorry @vit9696. It appears to be acidanthera/Lilu#65 what is breaking our systems. To be exact, this is preventing WhateverGreen from detecting and applying fixes on AMD iGPUs. I am aware that AMD systems are of no concern to this organisation, but it is conflicting with our work over at NootInc/WhateverRed, where we have display output being a hit or miss, even though we detect nothing wrong from our part, but rather AGDP is refusing to cooperate.

vit9696 commented 1 year ago

May I see an IOReg for such a system? I think APUs should go to builtin device to be honest.

VisualEhrmanntraut commented 1 year ago

May I see an IOReg for such a system? I think APUs should go to builtin device to be honest.

Sure! MacBook Pro.ioreg.zip

vit9696 commented 1 year ago

Committed a fix to master. Please test. Note, that now it should correctly report the IGPU as a builtin.

VisualEhrmanntraut commented 1 year ago

There's a bit of a problem though; the AMD iGPUs are more or less the same as their dGPU family, so a few of the WhateverGreen fixes are needed like applbkl, unfairgva, and agdpmod. We'd have to duplicate those parts over in WhateverRed, and not only do we wish to avoid duplicating code, but also avoid licensing issues since we're unsure whether our license is compatible with WhateverGreen's

vit9696 commented 1 year ago

Well, ok. Please retry with the latest change.

VisualEhrmanntraut commented 1 year ago

It's detected now by WhateverGreen (got renamed), but all of our testers with non-Renoir iGPUs are unavailable (including me) so I'm not sure about anything more than that, so I will assume all the other Radeon patches also will work

vit9696 commented 1 year ago

Alright, I am closing this assuming at least partially fixed.

VisualEhrmanntraut commented 1 year ago

Actually, after reevaluating carefully, I think it would be better if we only copied the relevant parts of WhateverGreen (and giving credit), and have Lilu detect it as an iGPU to avoid any future or current issues or conflicts. This will also allow us to be more versatile. Therefore, I think you should revert back to when AMD iGPUs were detected as iGPUs. I apologise for the inconvenience.

VisualEhrmanntraut commented 1 year ago

(@vit9696)

vit9696 commented 1 year ago

Ok, done.

VisualEhrmanntraut commented 1 year ago

Alright, thanks a lot. Sorry once again. Have a nice day vit

RubRLO commented 1 year ago

hello friends, I would like a direction on my Ryzentosh. I'm testing WhateverRed.kext WhatsApp Image 2023-03-13 at 19 16 25 could someone help me with this? Boot stopped at this part

RubRLO commented 1 year ago

AMD Ryzen 7 3700U RX Vega 10