Ethtool - cannot connect DAC cable in 1000baseX-mode

I am trying to connect a TO (6.5.2, firmware not yet updated; eth2-switch set to SFP) via fibre to fibre switch (TP-Link SX3008F). The switch does neither allow speed 2500baseX nor autoneg

grafik

(no idea why for the autoneg; I can only set fixed 1000M or 10G), I therefore set the switch to speed 1000/full duplex.

grafik

When plugging in the DAC-cable, I get no connectivity.

root@turris:~# ethtool eth2
Settings for eth2:
        Supported ports: [ ]
        Supported link modes:   2500baseX/Full
                                1000baseX/Full
        Supported pause frame use: Symmetric
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  2500baseX/Full
        Advertised pause frame use: Symmetric
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Speed: 2500Mb/s
        Duplex: Full
        Port: Direct Attach Copper
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: off
        Supports Wake-on: d
        Wake-on: d
        Link detected: no

Syslog:
Feb 22 21:49:00 turris kernel: [15889.570350] sfp sfp: module FS               SFPP-PC01        rev A    sn G2330438860-1    dc 231010  
Feb 22 21:49:00 turris kernel: [15889.579710] mvneta f1034000.ethernet eth2: switched to inband/2500base-x link mode

I therefore tried to change the speed on the TO manually, but get the following error:

root@turris:~# ethtool -s eth2 speed 1000
Cannot advertise speed 1000

I tried exchanging the DAC by fibre modules

root@PatIsa_AP_EG:~# ethtool eth2
Settings for eth2:
        Supported ports: [ MII ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full
        Supported pause frame use: Symmetric
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full
        Advertised pause frame use: Symmetric
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Speed: 10Mb/s
        Duplex: Half
        Port: MII
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: off
        Supports Wake-on: d
        Wake-on: d
        Link detected: no

[   11.328173] sfp sfp: module FS               SFP-10GSR-85     rev A    sn F2220034338      dc 230830  
[   11.337564] mvneta f1034000.ethernet eth2: initial validation with support 0000800,00000000,c075b2ac failed: -22

which neither works - this time I can set the speed and also autoneg off/on, but this does not change the above shown values.

The only module, that does work, is the Turris SFP (with speed 2500 obviously). The cable itself did work in the past (when connecting a CRS305-1G-4S+IN), but again only with speed 2500.

Is there some hardcoding that if a switch/client with higher speeds is attached, the link rate is set to 2500 regardless of what was set via ethtool? How do I effectively set the link speed to 1000 und thus establish a connection between switch and TO? Can you please delete the diagnostics once you downloaded the attached file 2024-03-14-03-16-17_26ec5908_anonymized.zip?