BPI-R3 SFP Module compatibility

Hi,

I’d like know with Openwrt snapshot, is commonly used HSGMII modules are supported and negotiate at 2.5GbE ?

Such as:
Huawei MA5671A PON stick
TP-Link TL-SM410U RJ45 module
Mikrotik S+RJ10 RJ45 module

Hy I have tried with sercomm fgs202 but it failed. I have a sfp fs gpon onu and it works.

Thé Huawei ma5671a works?

I use these ones. Works fine.

image

Which type do you use? There are several types.

Thank you for the reply.

Ask them for one that works with BPI3 in comments, when ordering, it is the generic one imho.

For all having problems with sfp on eth1 (sfp1) and not on mt7531 (sfp2)

It seems to be still a problem in handling sgmii.

https://lkml.kernel.org/lkml/[email protected]/

Tested the TP-Link TL-SM410U RJ45 module with the 2022-01-13 snapshot and it works ok in any of the sfp ports in 1000 or 2500 base-x. Tested with same results the Onti ont-c2ge-r10 module.

Hi, Just got a TP-Link TL-SM410U and I’m unable to get it to negotiate/detect link with my 1Gbps network.

This happens on both SFP ports of the BPI-R3 running OpenWRT Snapshots 2023-01-13 and 2023-01-16.

I can see it detected in the log:

[   12.440505] sfp sfp1: Host maximum power 1.0W
[   12.445602] sfp sfp2: Host maximum power 1.0W
[   12.776737] sfp sfp1: module TP-LINK          TL-SM410U        rev 1.0  sn XXXXXXX    dc 220320

And in ethtool I see:

Settings for eth1:
        Supported ports: [ FIBRE ]
        Supported link modes:   2500baseX/Full
        Supported pause frame use: Symmetric Receive-only
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  2500baseX/Full
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Speed: Unknown!
        Duplex: Unknown! (255)
        Port: FIBRE
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Current message level: 0x000000ff (255)
                               drv probe link timer ifdown ifup rx_err tx_err
        Link detected: no

I’m new to SFP, so, is there anything special to be done for it to work? Or maybe I got a defective one? Thanks!

Your sfp only reports 2.5g,maybe you need a quirk in sfp driver if it should support 1g

Thanks @frank-w! As @prdtabim stated it works for him, I wonder if this is an issue with the driver or it’s related to the SFP’s EEPROM.

Hi @mrunx

I tested the Tplink Tl-SM410U linking to a 2.5Gb/s RTL8125B card in another PC. I will test with 1Gb/s to see if it syncs.

@prdtabim thanks! Much appreciate!

And if you could also post the SFP’s ethtool output, it might help too.

To @mrunx

I’m using snapshot from 2023-01-16 now. Module detection on eth1.

sfp sfp1: module TP-LINK          TL-SM410U        rev 2.0  sn 12241Y8000260    dc 220414

without cable



root@OpenWrt:~# ethtool eth1
Settings for eth1:
        Supported ports: [ FIBRE ]
        Supported link modes:   2500baseX/Full 
        Supported pause frame use: Symmetric Receive-only
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  2500baseX/Full 
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Speed: Unknown!
        Duplex: Unknown! (255)
        Port: FIBRE
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Current message level: 0x000000ff (255)
                               drv probe link timer ifdown ifup rx_err tx_err
        Link detected: no

Plug the cable on 2.5Gb/s card .

[  307.478370] mtk_soc_eth 15100000.ethernet eth1: Link is Up - 2.5Gbps/Full - flow control off
[  307.486833] br-wan: port 1(eth1) entered blocking state
[  307.492057] br-wan: port 1(eth1) entered forwarding state
ethtool eth1
Settings for eth1:
        Supported ports: [ FIBRE ]
        Supported link modes:   2500baseX/Full 
        Supported pause frame use: Symmetric Receive-only
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  2500baseX/Full 
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Speed: 2500Mb/s
        Duplex: Full
        Port: FIBRE
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Current message level: 0x000000ff (255)
                               drv probe link timer ifdown ifup rx_err tx_err
        Link detected: yes

And if I lock the card ( RTL8125B ) at 1Gb/s. The link drops … :frowning:

ethtool eth1
Settings for eth1:
        Supported ports: [ FIBRE ]
        Supported link modes:   2500baseX/Full 
        Supported pause frame use: Symmetric Receive-only
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  2500baseX/Full 
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Speed: Unknown!
        Duplex: Unknown! (255)
        Port: FIBRE
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Current message level: 0x000000ff (255)
                               drv probe link timer ifdown ifup rx_err tx_err
        Link detected: no

I’m using this sfp module to link to a TPLink switch unmanaged 8x 2.5GBase-T , so no problems. I don’t guess that 2.5Gb/s is the only speed available.

Just to compare. Using an ONTI 2.5G Base-t adapter.

sfp sfp1: module                                   rev 1.0  sn 2206210017       dc 220621 

The behaviour is exactly the same. Works at 2.5Gb/s but not at 1Gb/s.

@prdtabim

Thanks a lot!

Indeed, it seems it only supports 2.5GBaseX :frowning:

Also mentioned by @dangowrt in Banana Pi BPI-R3 OpenWRT image, comment #49:

You can also use slightly cheaper ONTi SFP modules which then also support fall-back to 100M/1G speed (SM410U supports 2.5G only ): https://www.aliexpress.com/item/1005004545962352.html

Tested the eth1 port using DAC and AOC cable to a Mikrotik CRS326-4S+2Q+RM. 2,5Gb/s OK Any other speed failed.

1 Like

was anyone able to get a 1GBit optical transfer module running

I tried this one https://www.fs.com/de/products/20140.html

Nearly everything looks ok, but I don’t get any answer. The cable and module is ok (confirmed with a different device and same config)

for more details => https://forum.openwrt.org/t/sfp-port-banana-pi-bpi-r3-not-receiving-traffic-with-openwrt-snapshot-build-date-23-1-2023/149211

I have 1g h!fibre sfp working…but they are not 2g5 capable.

H!Fiber Gigabit SFP Multimode Transceiver, 1000Base-SX LC Modul(550m, 850nm) für Cisco GLC-SX-MMD, Ubiquiti, Netgear, D-Link, Linksys, Mikrotik and Other Open Switches, 2 Pack https://amzn.eu/d/eUdFegJ

I have an h!fibre 1000base-T… do not work either on eth1 and SFP2…

[edit]

ethool report: “Supported link modes: 2500baseX/Full”

[edit] here a log section:

Tue Jan 24 10:41:28 2023 kern.info kernel: [    9.180714] sfp sfp2: Host maximum power 1.0W

Tue Jan 24 10:41:28 2023 kern.info kernel: [    9.516751] sfp sfp2: module OEM              SFP-GE-T         rev      sn CSGE1Lxxxx9      dc 211028

Tue Jan 24 10:41:30 2023 kern.info kernel: [   14.278858] mt7530 mdio-bus:1f sfp2: configuring for inband/2500base-x link mode
Tue Jan 24 10:41:30 2023 kern.info kernel: [   14.287788] br-lan: port 5(sfp2) entered blocking state
Tue Jan 24 10:41:30 2023 kern.info kernel: [   14.293010] br-lan: port 5(sfp2) entered disabled state
Tue Jan 24 10:41:30 2023 kern.info kernel: [   14.300553] device sfp2 entered promiscuous mode
Tue Jan 24 10:41:30 2023 kern.err kernel: [   14.355303] mt7530 mdio-bus:1f sfp2: validation with 
support 0000000,00000000,00000000 failed: -22
Tue Jan 24 10:41:30 2023 kern.err kernel: [   14.364411] sfp sfp2: sfp_add_phy failed: -22

Oh wow, I’ve seen it a lot the other way around (2.5G-capable devices only announcing 1G capability), but this is new and even worse: 1G-capable devices announcing 2.5G capability… We will need to add a quirk for it to the Linux kernel, so it will be recognized correctly…