Ich habe ein System mit einem einzelnen PCIe x8-Steckplatz und einem einzelnen M.2-Steckplatz. Ich habe ein Gerät, das als Root-Port fungiert und eine Verbindung herstellen muss, sowie ein M.2-Laufwerk. Wenn ich mir lspci und dmidecode ansehe, sehe ich, dass sich mein PCIe-Steckplatz und mein M.2-Steckplatz auf unterschiedlichen PCI-Bussen befinden.
Wie kann ich diese beiden Geräte so verbinden, dass die Root-Port-Geräte das M.2-Laufwerk und nicht den Linux-Kernel steuern können?
Mein ursprünglicher Plan bestand einfach darin, PCI-Befehle zu verwenden, um das M.2-Laufwerk aus dem Kernel zu entfernen. Wenn sie sich jedoch auf unterschiedlichen Bussen befinden, bedeutet das meiner Ansicht nach, dass sie vor dem Root Complex nicht verbunden sind. Dies bedeutet, dass sie ohne die CPU dazwischen nicht kommunizieren können.
Beim Online-Suchen habe ich herausgefunden, dass PCI-zu-PCI-Brücken entwickelt wurden, um die Fanout-Leistung eines einzelnen Ports auf einem Motherboard zu erhöhen. Ich dachte also, ich besorge mir eine Brücke, schließe sie an meinen einzelnen Kartensteckplatz an und verbinde dann beide dahinter. Das Problem ist, dass ich keine solche Karte finden kann. Ich kann passive Backplanes finden, aber mein Root-Port-Gerät wird über PCI mit Strom versorgt, sodass die passiven Karten nicht funktionieren. Ich brauche eine mit Strom versorgte Backplane, die mehrere Geräte hinter einer Brücke oder einem Switch verbindet.
Kennt jemand ein solches Teil oder eine Alternativlösung?