With the original firmware, the USB, LG, and RAID exist. Are you sure this wasn't from a warm boot from Windows?I've got some complete dumps now from IOReg & MaciASL, attached.
I flashed my firmware to the same modified v50 as yesterday, and started collecting dumps and tinkering. Once again, with the SSDT enabled, the Apple RAID card no longer works - I wonder if my SSDT.asl is interfering with it because they are on the same PCIE Switch?
Unfortunately, today I could not get video output when rebooting from a cold boot to a warm boot - not on my 5k and not on my primary monitor. After many attempts, I flashed the v33 firmware and also ran into the same issue. I am not sure what is contributing to this - the order of my Displayport cables to my Titan Ridge Card & Secondary Display? The presence of the RAID card? Either way, I was unable to get logs from the warm boot scenario I was in yesterday.
I could enable OpenCore logs and see if that gave me any indication of what monitor OpenCore saw and why.
Perhaps I need to fix my SSDT.aml with the information I have from cold boot, and when the RAID card is working with it enable I will know I haven't mucked anything up?
I like your idea for a software solution - I was thinking it would also be useful to have something in OpenCore as well that automatically reboots if it detects cold boot, since the AIC and also my RAID card both seem not to work without a reboot, so I am always double booting anyways. I am not sure if this is enough to initialize these cards or of this must be done in MacOS -- but booting to Windows (which has no drivers) before going to MacOS is enough to initialize the RAID card so I think it should work.
I am not sure which way to proceed as far as debugging goes from here, maybe you will have some ideas for me?
Thanks,
EKSU
With the flashed firmware and no SSDT, the upstream of the LG exists but it has no subordinate bus numbers [XX], USB is missing (not just hiding - the downstream has a subordinate bus number for where the USB controller would be [07] but there's nothing on that bus), and the RAID exists.
With the flashed firmware and SSDT, the LG exists having a hidden [ffff:ffff] downstream for a second Thunderbolt port (which I guess is expected for a Thunderbolt device like the LG where the second thunderbolt port is used for DisplayPort output), the USB (18:02.0-[19]) is as described in the no SSDT case, and the RAID exists.
I don't see any inconsistencies/conflicts with your Thunderbolt SSDT vs the built in SSDT that defines the slots.
I'm not sure where to go from here. I'm not an ACPI expert, or a Thunderbolt expert. I think additional code is required - either in the add-in card firmware (no chance), or ACPI, or EFI, or macOS.