Auteur Sujet: Comment monter un réseau 10Gbit/s chez soi  (Lu 2220291 fois)

0 Membres et 6 Invités sur ce sujet

kfc

  • Abonné Free fibre
  • *
  • Messages: 33
  • Courbevoie (92)
Comment monter un réseau 10Gbit/s chez soi
« Réponse #5148 le: Hier à 22:48:35 »
tiens j'aurai pas deviné que c'étais controlable. Par contre, ethtool -i me dit que supports-eeprom-access:no

-[0000:00]-+-00.0
           +-00.2
           +-01.0
           +-01.1-[01-5f]--
           +-01.2-[60-be]--
           +-02.0
           +-02.1-[bf]----00.0
          [b] +-02.3-[c0]----00.0[/b]
           +-02.5-[c1]----00.0
           +-03.0
           +-03.1-[c2]----00.0
           +-08.0
           +-08.1-[c3]--+-00.0
           |            +-00.1
           |            +-00.2
           |            +-00.4
           |            \-00.6
           +-08.2-[c4]--+-00.0
           |            \-00.1
           +-08.3-[c5]--+-00.0
           |            +-00.3
           |            +-00.4
           |            +-00.5
           |            \-00.6
           +-14.0
           +-14.3
           +-18.0
           +-18.1
           +-18.2
           +-18.3
           +-18.4
           +-18.5
           +-18.6
           \-18.7

00:02.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Strix/Strix Halo GPP Bridge (rev 02) (prog-if 00 [Normal decode])
Subsystem: Advanced Micro Devices, Inc. [AMD] Device 1453
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin ? routed to IRQ 35
Bus: primary=00, secondary=c0, subordinate=c0, sec-latency=0
I/O behind bridge: 2000-2fff [size=4K] [16-bit]
Memory behind bridge: b0e00000-b0efffff [size=1M] [32-bit]
Prefetchable memory behind bridge: 00000000fff00000-00000000000fffff [disabled] [64-bit]
Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR-
BridgeCtl: Parity- SERR+ NoISA- VGA- VGA16- MAbort- >Reset- FastB2B-
PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn-
Capabilities: [50] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [58] Express (v2) Root Port (Slot+), IntMsgNum 0
DevCap: MaxPayload 256 bytes, PhantFunc 0
ExtTag+ RBE+ TEE-IO-
DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+
MaxPayload 256 bytes, MaxReadReq 512 bytes
DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
LnkCap: Port #2, Speed 16GT/s, Width x2, ASPM L1, Exit Latency L1 <64us
ClockPM- Surprise- LLActRep+ BwNot+ ASPMOptComp+
LnkCtl: ASPM L1 Enabled; RCB 64 bytes, LnkDisable- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt+ AutBWInt+ FltModeDis-
LnkSta: Speed 8GT/s, Width x1
TrErr- Train- SlotClk+ DLActive+ BWMgmt- ABWMgmt-
SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug- Surprise-
Slot #0, PowerLimit 75W; Interlock- NoCompl+
SltCtl: Enable: AttnBtn- PwrFlt- MRL- PresDet- CmdCplt- HPIrq- LinkChg-
Control: AttnInd Unknown, PwrInd Unknown, Power- Interlock-
SltSta: Status: AttnBtn- PowerFlt- MRL- CmdCplt- PresDet+ Interlock-
Changed: MRL- PresDet- LinkState+
RootCap: CRSVisible+
RootCtl: ErrCorrectable- ErrNon-Fatal- ErrFatal- PMEIntEna+ CRSVisible+
RootSta: PME ReqID 0000, PMEStatus- PMEPending-
DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- LTR+
10BitTagComp+ 10BitTagReq+ OBFF Not Supported, ExtFmt+ EETLPPrefix+, MaxEETLPPrefixes 1
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS- LN System CLS Not Supported, TPHComp+ ExtTPHComp- ARIFwd+
AtomicOpsCap: Routing+ 32bit+ 64bit+ 128bitCAS-
DevCtl2: Completion Timeout: 65ms to 210ms, TimeoutDis- ARIFwd-
AtomicOpsCtl: ReqEn- EgressBlck-
IDOReq- IDOCompl- LTR+ EmergencyPowerReductionReq-
10BitTagReq+ OBFF Disabled, EETLPPrefixBlk-
LnkCap2: Supported Link Speeds: 2.5-16GT/s, Crosslink- Retimer+ 2Retimers+ DRS-
LnkCtl2: Target Link Speed: 8GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance Preset/De-emphasis: -6dB de-emphasis, 0dB preshoot
LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete+ EqualizationPhase1+
EqualizationPhase2+ EqualizationPhase3+ LinkEqualizationRequest-
Retimer- 2Retimers- CrosslinkRes: unsupported, FltMode-
Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
Address: 00000000fee0c000  Data: 0020
Capabilities: [c0] Subsystem: Advanced Micro Devices, Inc. [AMD] Device 1453
Capabilities: [c8] HyperTransport: MSI Mapping Enable+ Fixed+
Capabilities: [100 v1] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
Capabilities: [270 v1] Secondary PCI Express
LnkCtl3: LnkEquIntrruptEn- PerformEqu-
LaneErrStat: 0
Capabilities: [2a0 v1] Access Control Services
ACSCap: SrcValid+ TransBlk+ ReqRedir+ CmpltRedir+ UpstreamFwd+ EgressCtrl- DirectTrans+
ACSCtl: SrcValid+ TransBlk- ReqRedir+ CmpltRedir+ UpstreamFwd+ EgressCtrl- DirectTrans-
Capabilities: [370 v1] L1 PM Substates
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
  PortCommonModeRestoreTime=150us PortTPowerOnTime=90us
L1SubCtl1: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+
   T_CommonMode=150us LTR1.2_Threshold=306176ns
L1SubCtl2: T_PwrOn=150us
Capabilities: [400 v1] Data Link Feature <?>
Capabilities: [410 v1] Physical Layer 16.0 GT/s
Phy16Sta: EquComplete- EquPhase1- EquPhase2- EquPhase3- LinkEquRequest-
Capabilities: [440 v1] Lane Margining at the Receiver
PortCap: Uses Driver-
PortSta: MargReady- MargSoftReady-
Kernel driver in use: pcieport
Kernel modules: shpchp

c0:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8127 10GbE Controller (rev 08)
Subsystem: Realtek Semiconductor Co., Ltd. Device 0123
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 150
Region 0: I/O ports at 2000 [size=256]
Region 2: Memory at b0e00000 (64-bit, non-prefetchable) [size=256K]
Region 4: Memory at b0e40000 (64-bit, non-prefetchable) [size=16K]
Expansion ROM at b0e60000 [disabled] [size=128K]
Capabilities: [40] Power Management version 3
Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
Address: 0000000000000000  Data: 0000
Capabilities: [70] Express (v2) Endpoint, IntMsgNum 1
DevCap: MaxPayload 512 bytes, PhantFunc 0, Latency L0s <512ns, L1 <64us
ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 75W TEE-IO-
DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop-
MaxPayload 256 bytes, MaxReadReq 512 bytes
DevSta: CorrErr+ NonFatalErr- FatalErr+ UnsupReq+ AuxPwr+ TransPend-
LnkCap: Port #0, Speed 8GT/s, Width x2, ASPM L0s L1, Exit Latency L0s unlimited, L1 <64us
ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
LnkCtl: ASPM L1 Enabled; RCB 64 bytes, LnkDisable- CommClk+
ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt- FltModeDis-
LnkSta: Speed 8GT/s, Width x1 (downgraded)
TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- LTR+
10BitTagComp+ 10BitTagReq- OBFF Via message/WAKE#, ExtFmt- EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS- TPHComp+ ExtTPHComp-
AtomicOpsCap: 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-
AtomicOpsCtl: ReqEn-
IDOReq- IDOCompl- LTR+ EmergencyPowerReductionReq-
10BitTagReq- OBFF Disabled, EETLPPrefixBlk-
LnkCap2: Supported Link Speeds: 2.5-8GT/s, Crosslink- Retimer+ 2Retimers+ DRS-
LnkCtl2: Target Link Speed: 8GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance Preset/De-emphasis: -6dB de-emphasis, 0dB preshoot
LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete+ EqualizationPhase1+
EqualizationPhase2+ EqualizationPhase3+ LinkEqualizationRequest-
Retimer- 2Retimers- CrosslinkRes: Upstream Port, FltMode-
Capabilities: [b0] MSI-X: Enable+ Count=64 Masked-
Vector table: BAR=4 offset=00000000
PBA: BAR=4 offset=00000800
Capabilities: [d0] Vital Product Data
Not readable
Capabilities: [100 v2] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP-
ECRC- UnsupReq- ACSViol- UncorrIntErr+ BlockedTLP- AtomicOpBlocked- TLPBlockedErr-
PoisonTLPBlocked- DMWrReqBlocked- IDECheck- MisIDETLP- PCRC_CHECK- TLPXlatBlocked-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP-
ECRC- UnsupReq+ ACSViol- UncorrIntErr+ BlockedTLP- AtomicOpBlocked- TLPBlockedErr-
PoisonTLPBlocked- DMWrReqBlocked- IDECheck- MisIDETLP- PCRC_CHECK- TLPXlatBlocked-
UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+
ECRC- UnsupReq- ACSViol- UncorrIntErr+ BlockedTLP- AtomicOpBlocked- TLPBlockedErr-
PoisonTLPBlocked- DMWrReqBlocked- IDECheck- MisIDETLP- PCRC_CHECK- TLPXlatBlocked-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+ CorrIntErr- HeaderOF-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+ CorrIntErr+ HeaderOF+
AERCap: First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkCap+ ECRCChkEn-
MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
HeaderLog: 00000000 00000000 00000000 00000000
Capabilities: [148 v1] Virtual Channel
Caps: LPEVC=0 RefClk=100ns PATEntryBits=1
Arb: Fixed- WRR32- WRR64- WRR128-
Ctrl: ArbSelect=Fixed
Status: InProgress-
VC0: Caps: PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
Arb: Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
Ctrl: Enable+ ID=0 ArbSelect=Fixed TC/VC=ff
Status: NegoPending- InProgress-
Capabilities: [164 v1] Device Serial Number 01-00-00-00-68-4c-e0-00
Capabilities: [174 v1] Secondary PCI Express
LnkCtl3: LnkEquIntrruptEn- PerformEqu-
LaneErrStat: 0
Capabilities: [184 v1] Physical Layer 16.0 GT/s
Phy16Sta: EquComplete- EquPhase1- EquPhase2- EquPhase3- LinkEquRequest-
Capabilities: [1a8 v1] Lane Margining at the Receiver
PortCap: Uses Driver-
PortSta: MargReady- MargSoftReady-
Capabilities: [244 v1] Latency Tolerance Reporting
Max snoop latency: 1048576ns
Max no snoop latency: 1048576ns
Capabilities: [24c v1] L1 PM Substates
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
  PortCommonModeRestoreTime=150us PortTPowerOnTime=150us
L1SubCtl1: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+
   T_CommonMode=0us LTR1.2_Threshold=306176ns
L1SubCtl2: T_PwrOn=150us
Capabilities: [25c v1] Data Link Feature <?>
Capabilities: [268 v1] Precision Time Measurement
PTMCap: Requester+ Responder- Root-
PTMClockGranularity: Unimplemented
PTMControl: Enabled- RootSelected-
PTMEffectiveGranularity: Unknown
Capabilities: [274 v1] Vendor Specific Information: ID=0003 Rev=1 Len=054 <?>
Kernel driver in use: r8127
Kernel modules: r8169, r8127

hwti

  • Abonné Orange Fibre
  • *
  • Messages: 2 848
  • Chambly (60)
Comment monter un réseau 10Gbit/s chez soi
« Réponse #5149 le: Hier à 23:07:24 »
Pour les accès eeprom ou autres, il y a les ioctl rtltool du driver propriétaire, mais l'outil ne semble pas public.
Et à moins de reconnaitre les configs PCIe, on ne saurait pas quoi changer (et en cas d'erreur il faudrait reprogrammer l'eeprom manuellement).

Tu peux essayer les deux commandes :
# Set PCI_EXP_LNKCTL2 : PCI_EXP_LNKCTL2_TLS_16_0GT
setpci -v -s c0:00.0 CAP_EXP+0x30.w=0x0004:0x000f

# Set PCI_EXP_LNKCTL PCI_EXP_LNKCTL_RL (Retrain Link)
setpci -v -s c0:00.0 CAP_EXP+0x10.w=0x0020:0x0020

Si ça ne suffit pas, il faudrait tenter de changer LnkCap / LnkCap2 avant :
# Set PCI_EXP_LNKCAP :  PCI_EXP_LNKCAP_MLW=1
setpci -v -s c0:00.0 CAP_EXP+0x0C.w=0x0010:0x03f0

# Set PCI_EXP_LNKCAP :  PCI_EXP_LNKCAP_SLS_16_0GB
setpci -v -s c0:00.0 CAP_EXP+0x0C.w=0x0004:0x000f

# Set PCI_EXP_LNKCAP2 :  set PCI_EXP_LNKCAP2_SLS_16_0GB bit
setpci -v -s c0:00.0 CAP_EXP+0x2C.w=0x0010:0x0010

kfc

  • Abonné Free fibre
  • *
  • Messages: 33
  • Courbevoie (92)
Comment monter un réseau 10Gbit/s chez soi
« Réponse #5150 le: Hier à 23:24:34 »
Pas d'amélioration avec les deux set de cmds + retrain à nouveau après la seconde.

La seule différence que je vois est "LnkCtl2 : Target Link Speed : 16GT/s" mais vu que les LnkCap ont pas changé (toujours 8GT/s) malgré les setpci - pas trop surpris que ca change rien.

hwti

  • Abonné Orange Fibre
  • *
  • Messages: 2 848
  • Chambly (60)
Comment monter un réseau 10Gbit/s chez soi
« Réponse #5151 le: Aujourd'hui à 01:11:57 »
Si le LnkSta n'a pas changé, et qu'on ne peut pas modifier LnkCap, il faudrait soit :
 - tricher dans le driver (mais je ne sais pas trop comment, en tout cas il n'y a pas de quirk pour ça)
 - faire un dump de l'eeprom, et comparer avec une autre RTL8127 (avec un peu de chance, il y aura une zone qui correspond à "lspci -xxx -s c0:00.0")

Je n'ai pas trouvé de datasheet pour la RTL8127.
Dans celle de la RTL8125B :
Citer
Values in the internal eMemory OTP or external EEPROM allow default fields in PCI configuration
space and I/O space to be overridden following a power-on or software EEPROM auto-load command.
The RTL8125BG/RTL8125BGS will auto-load values from the eMemory OTP or EEPROM. If the
EEPROM is not present and eMemory OTP auto-load is bypassed, the RTL8125BG/RTL8125BGS
initialization uses default values for the appropriate Configuration and Operational Registers.
Mais il n'y a pas d'indication sur les adresses, ce qui est utilisé ou pas...
Et rien ne dit que les valeurs en lien avec la vitesse du PCIe ne seraient pas générées (avec une valeur ailleurs dans l'EEPROM, qui indiquerait quelle est la configuration choisie).

kfc

  • Abonné Free fibre
  • *
  • Messages: 33
  • Courbevoie (92)
Comment monter un réseau 10Gbit/s chez soi
« Réponse #5152 le: Aujourd'hui à 10:11:19 »
Oui, c'est pas impossible : mon modèle sfp est https://fr.aliexpress.com/item/1005010287958266.html mais il y a des versions RJ45 très similaires en pcie 4.0 x1 https://fr.aliexpress.com/item/1005010479592366.html donc le chip a bien l'air d'en être capable.
« Modifié: Aujourd'hui à 11:33:50 par kfc »