BPI-R3 SFP Module compatibility

I’m curious of their answer.

But not only that. Now also works correctly the 1Gbps H!Fiber ASF-GE-T Rj45 SFP module purchased on Amazon and announced as 10baseT, 100baseT and 1000baseT.

I have reply to Russell King with his email address directly. But I don’t sure the email server will block mail which has attached file or not.

How big is the file? Afaik it is only some kb with many zero bytes,so maybe you can send output of

hexdump -C eepromfile

Or post output here and send him a link to the posting

just a short update to my problem. After 2 month of waiting, I tried today a new master snapshot and now everything works for me.

  1. FS.com SFP Transceiver Modul 1000BASE-BX BiDi SFP 1310nm-TX/1550nm-RX work now. I’m getting a 1GBit connection on sfp1 on fibre directly from my internet provider

  2. 2.5G Sfp ethernet from aliexpress works too (https://www.aliexpress.com/item/1005004545962352.html)

1 Like

I’ve ordered the 2.5G SFP Ethernet module, I’ll report back when I receive it!

fs.patch (1,3 Ko) the quirk works too with the following device : https://www.fs.com/fr/products/133619.html it reports as vendor “fs” and part “GPON-ONU-34-20BI” (device that also works when flashed as MA5671 with the current openwrt patch)

[  303.374660] sfp sfp1: module FS               GPON-ONU-34-20BI rev 01   sn xxxx      dc 230330  
[  303.413807] hwmon hwmon3: temp1_input not attached to any thermal zone
[  303.684653] sfp sfp1: module transmit fault indicated
[  311.777978] mtk_soc_eth 15100000.ethernet eth1: Link is Up - **2.5Gbps/Full** - flow control off

Thanks !

this should be fixed too

Indeed, if I add “.fixup = sfp_fixup_ignore_tx_fault,” it removes the line too, thanks !

How can I help to make that land in the openwrt snapshots ?

Another one working well : https://www.fs.com/products/139650.html [ 10.888626] sfp sfp2: module FS SFP-2.5G-T rev 1.0 sn gxxx dc 220725
[ 15.993369] mtk_soc_eth 15100000.ethernet eth0: configuring for fixed/2500base-x link mode [ 15.993572] mtk_soc_eth 15100000.ethernet eth0: Link is Up - 2.5Gbps/Full - flow control rx/tx

[  5.567386] sfp sfp1: module OEM              SFP-10G-T        rev 1    sn SKxxxxxx     dc 221230  
[ 10.311462] mt7530 mdio-bus:1f sfp2: configuring for inband/2500base-x link mode

I received it. It’s a different module than what was pictured on Alibaba and does not seem to work. I will try an updated openwrt version

SFP-10G-T? As in 10G? That would be SFP+ rather than SFP. SFP+ is not supported on the R3. Someone correct me if I am wrong.

1 Like

I bought SFP-2.5G-T but received a SFP-10G-T! The adapter is recognized but link is not detected when I plug the wire.

60: None 02.0: 10701 Ethernet
  [Created at net.126]
  Unique ID: dkcu.ndpeucax6V1
  Parent ID: cVnh.TfPFe67fIBB
  SysFS ID: /class/net/sfp2
  SysFS Device Link: /devices/platform/soc/15100000.ethernet/mdio_bus/mdio-bus/mdio-bus:1f
  Hardware Class: network interface
  Model: "Ethernet network interface"
  Driver: "mt7530"
  Device File: sfp2
  HW Address: e2:db:19:40:30:ad
  Permanent HW Address: e2:db:19:40:30:ad
  Link detected: no
  Config Status: cfg=new, avail=yes, need=no, active=unknown
  Attached to: #16 (Ethernet controller)

When I swap out and back in:

[ 1356.010868] sfp sfp1: module OEM              SFP-10G-T        rev 1    sn SK2301030020     dc 221230  
[ 1356.020273] mtk_soc_eth 15100000.ethernet eth1: validation with support 0000000,00000000,00000000 failed: -22

It will be recognised as the sfp details are accessed out of band - SDA line? However it will not be able negotiate the link for the data lines.

I am not even sure whether SFP+ 10G unit can negotiate anything less than 10Gbps , which would mean it is just not possible to run in a SFP cage, where it seems to max out at 5Gbps going by the wikpedia page.

Again, does anyone know if I am wrong in my assumption?

Did someone tested BPI-R3 with C-Data FD511GX-RM0 SFP module? I want to replace ISP’s ONU.

UPD.

Also I found this module: https://v-solution.ru/onu-v2801f-v-solution-1ge-sfp.html I believe this sfp module has the same hardware as C-Data FD511GX-RM0 module. But is its power consumption too high (≤4W)? I believe, it is now limited to 3W max only in BPI-R3 firmware? I don’t plan to use another (lan) sfp module, so I think, that is safe to raise max power to 4 W in the firmware, right?

UPD2

It is said here: https://github.com/Anime4000/RTL960x/blob/main/Docs/2.5Gb.md that we can flash v2801f for proper 2,5 Gbe support. Also there is said, that sfp modules, based on RTL960x has 3 different 2.5Gb Modes: Screenshot_20230529-082537_Pixel%20Launcher

Which one should I use with BPI-R3? I got this info for eth1 interface (is eth1 correct interface for internet sfp module?) Screenshot_20230529-084701_Pixel%20Launcher

Hi, I have DFP-34G-2C2 (GPON version) of this SFP chip and I’m interested in getting this board but I’d like to be sure the module will work.

I have it working with a ClearFog GT 8K, that I’d like to replace with R3 as it’s much cheaper with similar specs.

I didn’t manage to configure 2500base-x, even after tweaking LAN_SDS_MODE but 1000base-x works fine nevertheless (which in my personal case does not matter much as my plan throttles me at 300Mbps)

https://lore.kernel.org/netdev/167955062190.14332.12018910625899155487.git-patchwork-notify@kernel.org/T/

Were the “OEM” “SFP-2.5G-T” devices ones you had on-hand to test?

I got a pair from the SinoVoip Co.,Limited Banana PI AliExpress and as quirked they never notice the link state, and thus never come up to pass traffic. I’m curious if my modules are just slightly different or if it is possible the quirk needs to be updated to be functional.

Using kernel 6.4-rc5 as my base I changed the quirk from “2500baseT” to “2500baseX” as shown in sfp-fix-oem-2500baseX.patch (544 Bytes) to get it to notice the link. With this both SFP ports detect the SFP and can detect the link when the ethernet cable is connected. SFP2 passes traffic. SFP1 doesn’t pass traffic, but I believe that is expected without any additional patches on top of 6.4-rc5.

i2cdump -y 0 0x50
i2cdump -y 0 0x50
No size specified (using byte-data access)
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
00: 03 04 07 00 01 00 00 00 00 02 00 05 19 00 00 00    ???.?....?.??...
10: 1e 14 00 00 4f 45 4d 20 20 20 20 20 20 20 20 20    ??..OEM         
20: 20 20 20 20 00 00 00 00 53 46 50 2d 32 2e 35 47        ....SFP-2.5G
30: 2d 54 20 20 20 20 20 20 31 2e 30 20 03 52 00 19    -T      1.0 ?R.?
40: 00 1a 00 00 32 33 30 34 31 38 30 30 31 31 20 20    .?..2304180011  
50: 20 20 20 20 32 33 30 34 31 38 20 20 68 f0 01 99        230418  h???
60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
SFP Internal Photos

top bottom phy

Yes they are recognized as such,but have not disassembled them :stuck_out_tongue:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/net/phy/sfp.c?id=50e96acbe11667b6fe9d99e1348c6c224b2f11dd

But in my case link came up,only speed was not detected,but i get full 2g5 traffic through it with iperf3. In 1g mode i had retransmitts so maybe your patch does better

I hope 6.4 is not broken again. Daniel and i had both sfp ports working so far

With 2500baseX mode I get the following between SFP-2 and a 1g port. Once I got SFP-1 working it performed identically.

[ ID] Interval           Transfer     Bitrate         Retr
[  6]   0.00-10.00  sec  1.10 GBytes   941 Mbits/sec    0             sender
[  6]   0.00-10.00  sec  1.09 GBytes   939 Mbits/sec                  receiver

After getting SFP-1 working, I tested 2.5g between them and that yielded retransmitts, but I’m pretty sure that’s IRQ related. Just for testing I pushed the MTU up and didn’t get retransmitts.

It might be my SFP’s, it is possible they’re different but identifying the same.

My initial go had a lot of mud thrown at the wall, but I’ve finally narrowed down to exactly what got SFP-1 working for me, and it’s odd. sfp-reenable-autoneg.patch (511 Bytes)

-	sfp_quirk_disable_autoneg(id, modes, interfaces);

Of course, as you found, auto-negotiation doesn’t work on SFP-1 or SFP-2, so neither SFP works on boot with that, but once disabled on both of them, they both kick into gear and start working.

ethtool -s eth1 autoneg off speed 2500 duplex full
ethtool -s lan4 autoneg off speed 2500 duplex full

I have similar SFP and after tweaking LAN_SDS_MODE to 4 - sfp module disappeared. Do you have any problems like that?

Were you able to get the 10G one to work in 2.5G mode? What does the following error in your log mean?

[ 1356.020273] mtk_soc_eth 15100000.ethernet eth1: validation with support 0000000,00000000,00000000 failed: -22

I am also getting it with this device