LSI20320IE via Thunderbolt on Windows 10 x64

Hello,

I am struggling to launch LSI20320IE SCSI controller on my laptop. I have TB3 PCIe enclosure with 2 slots: one is equipped with LSI SAS 2008, other is LSI20320IE. While SAS controller works flawlessly, I can’t seem to make SCSI to work. It uses PCIe-PCI-X bridge PLX 8114 rev. BC. The bridge fails to start with INVALID_DEVICE_REQEST. I already enabled Thunderbolt Pre-Boot support, disabled security. Both bridge and SCSI controller itself are visible in UEFI shell (devtree and pci commands), and it is possible to write PCI registers, however, I noticed that in UEFI I/O space is empty for the bridge BUT HWINFO64 sees the child device just fine. What should I do? During PCI enumeration in pcicfglog I see “NonHotPlugBridgeWithNoChildren”, can this be the cause? Bridge uses standard pci.sys. I also disabled DmaRemapping, i just don’t know what to do. Also, looks like CSM does not launch the SCSI OptionROM, as I don’t see any messages during boot

STATUS_INVALID_DEVICE_REQUEST is common in PCI driver. The kernel traces can be enabled at system startup using Autologger and tracelog.exe, tracefmt.exe, symchk.exe tools from WDK. Backup the system before launching ActivateProvider.ps1.

PCI requires this WPP GUID. From pwsh with elevation:

$pciGuid = '{47711976-08c7-44ef-8fa2-082da6a30a30}';
.\ActivateProvider.ps1 -Provider $pciGuid -Startup;
Restart-Computer;
.\ActivateProvider.ps1 -Disable -Startup;
$resEtl = "C:\WINDOWS\system32\Logfiles\WMI\StartupCustomSession.etl";
.\ActivateProvider.ps1 -Decode $resEtl -SymRoot D:\Symbols -Image C:\Windows\System32\drivers\pci.sys;

FmtFile.txt can indicate the culprit.