danielmayeragain
Neuling
Thread Starter
- Mitglied seit
- 21.03.2026
- Beiträge
- 28
Hallo allerseits,
bevor mein Gedächnis mich verlässt oder die Zeit für Spielereien wieder schwindet:
Ich hatte vor einiger Zeit einen Raspi 5 mit PCIe-HAT geholt und begonnen, verschiedene Karten auszuprobieren. Der Raspi bietet einen PCIe 3.0 x1, per Eintrag in die config.txt kann auf 2.0 stabiler begrenzt werden, wenn nötig.
Folgendes:
1) Es gibt aktuell zwei relevante HAT, die aus dem slim-Anschluss einen echten PCIe-Slot setzen. Der eine - meiner - ist als direkter Aufsteck-HAT ausgerichtet, ein zweiter als Unterbau, der den PCIe-Slot neben den Raspi setzt. Letzteren gab es letztes Jahr noch nicht, der ist jedoch wesentlich praktischer als meiner. Zudem habe ich eben bei AliE einen 1x1 -> 4x1 gefunden, wenngleich ohne mechanische Slots. Ich schaue mir das noch an...
2) Denn: Der Aufsteck-HAT hat das Problem, dass die Slotblende mit seinem fest definierten Abstand "nach hinten" zeigt, die Karte im Übrigen je nach persönlicher Länge zum Ende der USB + LAN-Seite. Für Gehäuse eine gewisse Herausforderung.
3) Es gibt kein Gehäuse dafür. Mechanisch ist das für viele Karten mist, s. Bild TV-Karte.
4) Raspian o.ä. haben im Kernel alles PCIe-relevante deaktiviert. Man muss also einen eigenen Kernel übersetzen. Defconfig auf Raspi5, dann aber über make menuconfig die PCIe-Optionen soweit aktivieren (Module meist), die relevant sind.
5) Mein erster Versuch war meine DVB-S2 Max S8-Karte. Die ist in ihrer ersten Revision allerdings praktisch inkompatibel mit allem IOMMU und SRIOV-Gedöns. Wenn man also schon einen Kernel übersetzen muss, kann man das gleich mit abschalten. Eine Relevanz dieser Features für den Raspi5 kann ich ohnehin kaum erkennen.
6) Mein Wunsch wäre noch ein passendes PCIe-Switch-/Riserboard mit 3 Slots: DVB-S2, 10G und HBA.
Funktionieren tadellos:
- Digital Devices DVB-Max S8
- Mellanox CX2-10G, iperf3 Raspi5 <-> Epyc-Server:
- LSI 9300-16i, 20,1W ohne angeschlossene Festplatten...
- E10G15-F1/Tehuti tx40xx 10G, 1,7W mit SR-Modul, 0,8W ohne (git-Treiber, Firmware manuell hinterlegen)
Mein jüngstes Experiment war, einen Gigabyte PCIe-Riser vom G292-Z20 anzuschließen, der außerdem für seine beiden Slots eine vernünftige Mechanik vorhält - für einen Gehäuse-Eigenbau hielt ich das für sinnvoll. Also ein PC-Netzteil mit 2x6polig Graka aus der Schublade geholt, 12V und 5V aus den Molex abgegriffen (Potentiale lassen grüßen) und angeschlossen. Geht nicht. Evtl hatte ich auch ein defektes Modell - natürlich gebraucht geholt.
Ich werde diesen Post einige Male ergänzen, er dient auch der Eigendokumentation.
Wer Tests haben will: Ein paar Dinge gehen schon ganz gut.
bevor mein Gedächnis mich verlässt oder die Zeit für Spielereien wieder schwindet:
Ich hatte vor einiger Zeit einen Raspi 5 mit PCIe-HAT geholt und begonnen, verschiedene Karten auszuprobieren. Der Raspi bietet einen PCIe 3.0 x1, per Eintrag in die config.txt kann auf 2.0 stabiler begrenzt werden, wenn nötig.
Folgendes:
1) Es gibt aktuell zwei relevante HAT, die aus dem slim-Anschluss einen echten PCIe-Slot setzen. Der eine - meiner - ist als direkter Aufsteck-HAT ausgerichtet, ein zweiter als Unterbau, der den PCIe-Slot neben den Raspi setzt. Letzteren gab es letztes Jahr noch nicht, der ist jedoch wesentlich praktischer als meiner. Zudem habe ich eben bei AliE einen 1x1 -> 4x1 gefunden, wenngleich ohne mechanische Slots. Ich schaue mir das noch an...
2) Denn: Der Aufsteck-HAT hat das Problem, dass die Slotblende mit seinem fest definierten Abstand "nach hinten" zeigt, die Karte im Übrigen je nach persönlicher Länge zum Ende der USB + LAN-Seite. Für Gehäuse eine gewisse Herausforderung.
3) Es gibt kein Gehäuse dafür. Mechanisch ist das für viele Karten mist, s. Bild TV-Karte.
4) Raspian o.ä. haben im Kernel alles PCIe-relevante deaktiviert. Man muss also einen eigenen Kernel übersetzen. Defconfig auf Raspi5, dann aber über make menuconfig die PCIe-Optionen soweit aktivieren (Module meist), die relevant sind.
5) Mein erster Versuch war meine DVB-S2 Max S8-Karte. Die ist in ihrer ersten Revision allerdings praktisch inkompatibel mit allem IOMMU und SRIOV-Gedöns. Wenn man also schon einen Kernel übersetzen muss, kann man das gleich mit abschalten. Eine Relevanz dieser Features für den Raspi5 kann ich ohnehin kaum erkennen.
6) Mein Wunsch wäre noch ein passendes PCIe-Switch-/Riserboard mit 3 Slots: DVB-S2, 10G und HBA.
Funktionieren tadellos:
- Digital Devices DVB-Max S8
- Mellanox CX2-10G, iperf3 Raspi5 <-> Epyc-Server:
Code:
Connecting to host 192.168.3.53, port 5201
[ 5] local 192.168.3.103 port 38488 connected to 192.168.3.53 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 395 MBytes 3.32 Gbits/sec 54 758 KBytes
[ 5] 1.00-2.00 sec 392 MBytes 3.29 Gbits/sec 10 792 KBytes
[ 5] 2.00-3.00 sec 392 MBytes 3.29 Gbits/sec 3 812 KBytes
[ 5] 3.00-4.00 sec 392 MBytes 3.29 Gbits/sec 2 814 KBytes
[ 5] 4.00-5.00 sec 394 MBytes 3.30 Gbits/sec 0 827 KBytes
[ 5] 5.00-6.00 sec 392 MBytes 3.29 Gbits/sec 0 830 KBytes
[ 5] 6.00-7.00 sec 392 MBytes 3.29 Gbits/sec 0 841 KBytes
[ 5] 7.00-8.00 sec 392 MBytes 3.29 Gbits/sec 0 853 KBytes
[ 5] 8.00-9.00 sec 392 MBytes 3.29 Gbits/sec 0 853 KBytes
[ 5] 9.00-10.00 sec 392 MBytes 3.29 Gbits/sec 0 853 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 3.84 GBytes 3.30 Gbits/sec 69 sender
[ 5] 0.00-10.00 sec 3.83 GBytes 3.29 Gbits/sec receiver
Code:
[ 6.034738] mpt3sas version 48.100.00.00 loaded
[ 6.035115] mpt3sas 0001:03:00.0: enabling device (0000 -> 0002)
[ 6.035147] mpt3sas_cm0: 63 BIT PCI BUS DMA ADDRESSING SUPPORTED, total mem (4143552 kB)
[ 6.098838] mpt3sas_cm0: CurrentHostPageSize is 0: Setting default host page size to 4k
[ 6.098857] mpt3sas_cm0: MSI-X vectors supported: 96
[ 6.098860] mpt3sas_cm0: 0 4 4
[ 6.099031] mpt3sas_cm0: High IOPs queues : disabled
[ 6.099034] mpt3sas0-msix0: PCI-MSI-X enabled: IRQ 174
[ 6.099035] mpt3sas0-msix1: PCI-MSI-X enabled: IRQ 175
[ 6.099037] mpt3sas0-msix2: PCI-MSI-X enabled: IRQ 176
[ 6.099038] mpt3sas0-msix3: PCI-MSI-X enabled: IRQ 177
[ 6.099039] mpt3sas_cm0: iomem(0x0000001b80100000), mapped(0x0000000092c433e2), size(65536)
[ 6.099042] mpt3sas_cm0: ioport(0x0000000000000000), size(0)
[ 6.155468] mpt3sas_cm0: CurrentHostPageSize is 0: Setting default host page size to 4k
[ 6.182970] mpt3sas_cm0: scatter gather: sge_in_main_msg(1), sge_per_chain(7), sge_per_io(128), chains_per_io(19)
[ 6.183601] mpt3sas_cm0: request pool(0x00000000472558de) - dma(0x103a600000): depth(10368), frame_size(128), pool_size(1296 kB)
[ 6.226102] mpt3sas_cm0: sense pool(0x00000000a6d6d299) - dma(0x103ac00000): depth(10107), element_size(96), pool_size (947 kB)
[ 6.226253] mpt3sas_cm0: reply pool(0x00000000ea702532) - dma(0x103ae00000): depth(10432), frame_size(128), pool_size(1304 kB)
[ 6.226299] mpt3sas_cm0: config page(0x0000000000f65291) - dma(0x1007568000): size(512)
[ 6.226302] mpt3sas_cm0: Allocated physical memory: size(28243 kB)
[ 6.226303] mpt3sas_cm0: Current Controller Queue Depth(10104),Max Controller Queue Depth(10240)
[ 6.226305] mpt3sas_cm0: Scatter Gather Elements per IO(128)
[ 6.388558] mpt3sas_cm0: _base_display_fwpkg_version: complete
[ 6.388947] mpt3sas_cm0: LSISAS3008: FWVersion(07.00.01.00), ChipRevision(0x02)
[ 6.388952] mpt3sas_cm0: Protocol=(Initiator,Target), Capabilities=(TLR,EEDP,Snapshot Buffer,Diag Trace Buffer,Task Set Full,NCQ)
[ 6.398834] mpt3sas_cm0: sending port enable !!
[ 8.953458] mpt3sas_cm0: hba_port entry: 00000000c14684ad, port: 255 is added to hba_port list
[ 8.954461] mpt3sas_cm0: host_add: handle(0x0001), sas_addr(0x500062b20156c980), phys(8)
[ 14.091920] mpt3sas_cm0: port enable: SUCCESS
[ 14.092176] mpt3sas 0001:05:00.0: enabling device (0000 -> 0002)
[ 14.092198] mpt3sas_cm1: 63 BIT PCI BUS DMA ADDRESSING SUPPORTED, total mem (4143552 kB)
[ 14.146447] mpt3sas_cm1: CurrentHostPageSize is 0: Setting default host page size to 4k
[ 14.146460] mpt3sas_cm1: MSI-X vectors supported: 96
[ 14.146463] mpt3sas_cm1: 0 4 4
[ 14.146630] mpt3sas_cm1: High IOPs queues : disabled
[ 14.146632] mpt3sas1-msix0: PCI-MSI-X enabled: IRQ 193
[ 14.146634] mpt3sas_cm1: iomem(0x0000001b80300000), mapped(0x00000000f9cd474c), size(65536)
[ 14.146637] mpt3sas_cm1: ioport(0x0000000000000000), size(0)
[ 14.200943] mpt3sas_cm1: CurrentHostPageSize is 0: Setting default host page size to 4k
[ 14.228431] mpt3sas_cm1: scatter gather: sge_in_main_msg(1), sge_per_chain(7), sge_per_io(128), chains_per_io(19)
[ 14.229188] mpt3sas_cm1: request pool(0x00000000f5e814a8) - dma(0x103b000000): depth(10368), frame_size(128), pool_size(1296 kB)
[ 14.267739] mpt3sas_cm1: sense pool(0x000000002436720a) - dma(0x103b200000): depth(10107), element_size(96), pool_size (947 kB)
[ 14.267957] mpt3sas_cm1: reply pool(0x00000000f375edab) - dma(0x103b400000): depth(10432), frame_size(128), pool_size(1304 kB)
[ 14.268010] mpt3sas_cm1: config page(0x00000000fa983cda) - dma(0x101b008000): size(512)
[ 14.268012] mpt3sas_cm1: Allocated physical memory: size(27755 kB)
[ 14.268013] mpt3sas_cm1: Current Controller Queue Depth(10104),Max Controller Queue Depth(10240)
[ 14.268015] mpt3sas_cm1: Scatter Gather Elements per IO(128)
[ 14.429936] mpt3sas_cm1: _base_display_fwpkg_version: complete
[ 14.430212] mpt3sas_cm1: LSISAS3008: FWVersion(07.00.01.00), ChipRevision(0x02)
[ 14.430215] mpt3sas_cm1: Protocol=(Initiator,Target), Capabilities=(TLR,EEDP,Snapshot Buffer,Diag Trace Buffer,Task Set Full,NCQ)
[ 14.433803] mpt3sas_cm1: sending port enable !!
[ 16.953551] mpt3sas_cm1: hba_port entry: 0000000076cc1083, port: 255 is added to hba_port list
[ 16.954345] mpt3sas_cm1: host_add: handle(0x0001), sas_addr(0x500062b20156ef00), phys(8)
[ 22.091919] mpt3sas_cm1: port enable: SUCCESS
Code:
[ 207.646542] tn40xx: loading out-of-tree module taints kernel.
[ 207.647178] tn40xx: Tehuti Network Driver from https://github.com/acooks/tn40xx-driver, linux-6.7.y-1
[ 207.647181] tn40xx: Supported phys :
[ 207.647255] tn40xx 0001:01:00.0: enabling device (0000 -> 0002)
[ 207.647290] tn40xx 0001:01:00.0: srom 0x0 HWver 16 build 0 lane# 1 max_pl 0x2 mrrs 0x2
[ 207.767328] tn40xx 0001:01:00.0: phy_id 43a400
[ 207.767332] tn40xx 0001:01:00.0: priv->phy_mdio_port 0
[ 207.767334] tn40xx 0001:01:00.0: PHY detected ID=43A400 - QT2025 10Gbps SFP+
[ 209.591193] tn40xx 0001:01:00.0: QT2025 FW version 2.0.3.3 module type 0x2
[ 209.594545] tn40xx 0001:01:00.0 eth1: tehuti_fw.hdr was not found trying baked in firmware...
[ 209.694631] tn40xx 0001:01:00.0 eth1: fw 0xe
[ 209.694654] tn40xx 0001:01:00.0 eth1: Port A
[ 209.694665] tn40xx 0001:01:00.0: 1 1fc9:4022:1fc9:3015
[ 209.694673] tn40xx: detected 1 cards, 1 loaded
Mein jüngstes Experiment war, einen Gigabyte PCIe-Riser vom G292-Z20 anzuschließen, der außerdem für seine beiden Slots eine vernünftige Mechanik vorhält - für einen Gehäuse-Eigenbau hielt ich das für sinnvoll. Also ein PC-Netzteil mit 2x6polig Graka aus der Schublade geholt, 12V und 5V aus den Molex abgegriffen (Potentiale lassen grüßen) und angeschlossen. Geht nicht. Evtl hatte ich auch ein defektes Modell - natürlich gebraucht geholt.
Ich werde diesen Post einige Male ergänzen, er dient auch der Eigendokumentation.
Wer Tests haben will: Ein paar Dinge gehen schon ganz gut.
Anhänge
Zuletzt bearbeitet: