In total there are five PCIe slots - the x8 PCI slots, the 2x M.2 slots, and then thre two Realtek ethernet controllers are connected via PCIe separately also.
From dmesg, lspci and various documents, what do you see?
Does the CD8180 have in total five separate PCI controllers?
In contrast with for example having a PCI switch internally, that could let data pass directly between those five PCI slots. In csae of separate controllers, data would never pass automatically.
The e-key is a PCI socket too so it should have a root port too, so there should be five root ports in total right?
1x for the x16 socket slot (8 lanes),
1x for the 22x80mm M-key slot (4 lanes),
1x for the 22x30mm E-key slot (2 lanes), and
2x one each for the two 5gbe NIC:s (each 1 lane)?
What is the PCI bridge [0604]: CIX Technology Group Co., Ltd. CIX P1 CD8180 PCI Express Root Port [1f6c:0001] silicon actually - is it a proper root or is it a bridge?
Is there a PCI bus whereby through which the roots can communicate with each other outside of the OS/CPU drivers’ active facilitation?
(PCI devices connected to one and the same PCI switch chip can apparently communicate directly with each other.)