There's a script on XDA Forums that will look for any PCI based devices and add them to the DMASecurity registry key allowedbusses value.  Then you can go through and remove each entry one by one from that value to identify which devices actually need to be listed.  It's still a time consuming process, but better than guessing at every possible device.   For my XPS 8940, I ended up with 4 devices that had to be listed in the AllowedBusses value.  Below is the content of the registry file to add those 4 devices.  Maybe this will be useful to someone else.  (If nothing else, it will probably come up in search results a year or two from now when I've reset my computer and am struggling to find these settings again.  )
Can anyone point me to a document like this one, but with the appropriate registry values for an XPS 8940?I have an XPS 8940 that I am trying to get Windows System Guard / Secure Launch working on. I think I've got everything configured for it, but it's not kicking in. I suspect at this point that it may be because System Guard requires the system comply with the Windows DMA Protection spec, but system info shows under Device Encryption Support that one or more un-allowed DMA capable bus/devices are present.   Checking the registry key under 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DmaSecurity\AllowedBuses', I found that there are no devices whitelisted.  This is still running the factory Win11 image, so I guess Dell didn't configure DMA protection for some reason? I found a support document dated last year with the appropriate registry values for some Optiplex models, but can't find anything similar for my system. Anyone know which devices need to be whitelisted on an XPS 8940 to meet the DMA protection requirements? 
XPS 8940,DMA security, un-allowed DMA capable bus/devices detected