BPI-R4 SFP guidance

Edit for anyone who comes across this: The Ipolex ASF-GE-T 1.25gb SFP does work. The issue seemed to end up being the OpenWRT snapshot was missing kmod-phy-realtek, once installed and rebooted it immediately detected it and worked.

I’m somewhat new to this and trying to get an SPF to work in my BPI-R4. I bought this one just to test out (https://www.amazon.com/dp/B01HDABJJA) (Ipolex ASF-GE-T 1.25gb SFP to RJ45) as it is a Marvell based one I could get quickly and cheaply from Amazon and had read on here that Marvell based SFPs tend to be compatible.

If this SFP isn’t compatible that’s fine, I just don’t know enough to determine that myself. If it is incompatible, can anyone recommend one (fast shipping on Amazon would be great, but AliExpress is okay too if need be) that works for 1gig but preferably also for 2.5gb/5gb? I don’t foresee a 10gig connection in the near future but may go for 2 or 5 so having those as an option without replacing the card would be great.

Below is what I’ve tried and as much diagnostics as I can think to provide:

I have it in Eth2, but cannot get it installed. When I insert it I get: 
> [ 4449.050740] sfp sfp1: module OEM              SFP-GE-T         rev      sn CSGE4NB5643      dc 23112801
> [ 4449.147484] mtk_soc_eth 15100000.ethernet eth2: validation with support 00,00000000,00000000,00000000 failed: -EINVAL
> [ 4449.158185] sfp sfp1: sfp_add_phy failed: -EINVAL


If I try installing kmod_phy-marvell and kmod-phy-marvell-10g it says they are installed in root and up to date but also gives a "pkg_hash_check_unresolved... cannot find dependency kernel" error. 


Output for ethtool eth2 is: 
  >  Supported ports: [ MII ]
>         Supported link modes:   10baseT/Half 10baseT/Full
>                                 100baseT/Half 100baseT/Full
>                                 1000baseT/Half 1000baseT/Full
>                                 10000baseT/Full
>                                 2500baseX/Full
>                                 1000baseKX/Full
>                                 10000baseKX4/Full
>                                 10000baseKR/Full
>                                 1000baseX/Full
>                                 10000baseCR/Full
>                                 10000baseSR/Full
>                                 10000baseLR/Full
>                                 10000baseLRM/Full
>                                 10000baseER/Full
>                                 2500baseT/Full
>                                 5000baseT/Full
>         Supported pause frame use: Symmetric Receive-only
>         Supports auto-negotiation: Yes
>         Supported FEC modes: Not reported
>         Advertised link modes:  1000baseT/Full
>         Advertised pause frame use: Symmetric Receive-only
>         Advertised auto-negotiation: No
>         Advertised FEC modes: Not reported
>         Speed: 1000Mb/s
>         Duplex: Full
>         Port: MII
>         PHYAD: 0
>         Transceiver: internal
>         Auto-negotiation: off
>         Current message level: 0x000000ff (255)
>                                drv probe link timer ifdown ifup rx_err tx_err
>         Link detected: no


I had previously run 
>ethtool -s eth2 speed 1000 duplex full autoneg off

There is no output from that. 

dmesg | grep firmware just gives: 
>[    0.000000] psci: PSCIv1.1 detected in firmware.


and dmesg | grep -i eth2 gives: 
> [    4.764194] mtk_soc_eth 15100000.ethernet eth2: mediatek frame engine at 0xffffffc082900000, irq 103
> [   20.174179] mtk_soc_eth 15100000.ethernet eth2: configuring for inband/10gbase-r link mode
> [   20.206447] br-wan: port 2(eth2) entered blocking state
> [   20.211690] br-wan: port 2(eth2) entered disabled state
> [   20.216933] mtk_soc_eth 15100000.ethernet eth2: entered allmulticast mode
> [   20.223845] mtk_soc_eth 15100000.ethernet eth2: entered promiscuous mode
> [   20.292191] mtk_soc_eth 15100000.ethernet eth2: validation with support 00,00000000,00000000,00000000 failed: -EINVAL
> [ 3541.839621] mtk_soc_eth 15100000.ethernet eth2: left allmulticast mode
> [ 3541.846178] mtk_soc_eth 15100000.ethernet eth2: left promiscuous mode
> [ 3541.852681] br-wan: port 2(eth2) entered disabled state
> [ 3544.039981] mtk_soc_eth 15100000.ethernet eth2: configuring for inband/10gbase-r link mode
> [ 3545.134268] br-wan: port 2(eth2) entered blocking state
> [ 3545.139496] br-wan: port 2(eth2) entered disabled state
> [ 3545.144738] mtk_soc_eth 15100000.ethernet eth2: entered allmulticast mode
> [ 3545.151610] mtk_soc_eth 15100000.ethernet eth2: entered promiscuous mode
> [ 3545.219735] mtk_soc_eth 15100000.ethernet eth2: validation with support 00,00000000,00000000,00000000 failed: -EINVAL
> [ 3988.767844] mtk_soc_eth 15100000.ethernet eth2: left allmulticast mode
> [ 3988.774405] mtk_soc_eth 15100000.ethernet eth2: left promiscuous mode
> [ 3988.780868] br-wan: port 2(eth2) entered disabled state
> [ 3991.070648] mtk_soc_eth 15100000.ethernet eth2: configuring for inband/10gbase-r link mode
> [ 3991.101642] br-wan: port 2(eth2) entered blocking state
> [ 3991.106864] br-wan: port 2(eth2) entered disabled state
> [ 3991.112104] mtk_soc_eth 15100000.ethernet eth2: entered allmulticast mode
> [ 3991.118987] mtk_soc_eth 15100000.ethernet eth2: entered promiscuous mode
> [ 3991.190799] mtk_soc_eth 15100000.ethernet eth2: validation with support 00,00000000,00000000,00000000 failed: -EINVAL
> [ 4211.269779] mtk_soc_eth 15100000.ethernet eth2: left allmulticast mode
> [ 4211.276503] mtk_soc_eth 15100000.ethernet eth2: left promiscuous mode
> [ 4211.283042] br-wan: port 2(eth2) entered disabled state
> [ 4213.056276] mtk_soc_eth 15100000.ethernet eth2: configuring for inband/10gbase-r link mode
> [ 4213.087444] br-wan: port 2(eth2) entered blocking state
> [ 4213.092676] br-wan: port 2(eth2) entered disabled state
> [ 4213.097908] mtk_soc_eth 15100000.ethernet eth2: entered allmulticast mode
> [ 4213.104825] mtk_soc_eth 15100000.ethernet eth2: entered promiscuous mode
> [ 4213.181059] mtk_soc_eth 15100000.ethernet eth2: validation with support 00,00000000,00000000,00000000 failed: -EINVAL
> [ 4449.147484] mtk_soc_eth 15100000.ethernet eth2: validation with support 00,00000000,00000000,00000000 failed: -EINVAL

That means you need to update to latest snapshot as the kernel installed no longer matches the version of the modules available for download.

You may auto-update to the most recent snapshot using

opkg update
opkg install owut
owut upgrade

That should solve it.

Much appreciated, thanks!

Your sfp module might has a broken eeprom data, more information related here:

It would be better if you could provide ethtool -m output of your module(Please use full version of ethtool)

wan
root@OpenWrt:~# ethtool -m sfp-wan
        Identifier                                : 0x03 (SFP)
        Extended identifier                       : 0x04 (GBIC/SFP defined by 2-wire interface ID)
        Connector                                 : 0x07 (LC)
        Transceiver codes                         : 0x00 0x00 0x00 0x01 0x20 0x40 0x0c 0x05 0x00
        Transceiver type                          : FC: 100 MBytes/sec
        Encoding                                  : 0x01 (8B/10B)
        BR Nominal                                : 1300MBd
        Rate identifier                           : 0x00 (unspecified)
        Length (SMF)                              : 0km
        Length (OM2)                              : 80m
        Length (OM1)                              : 30m
        Length (Copper or Active cable)           : 0m
        Length (OM3)                              : 300m
        Laser wavelength                          : 850nm
        Vendor name                               : OEM
        Vendor OUI                                : 00:01:9c
        Vendor PN                                 : SFP-10GE-T-I
        Vendor rev                                : 2
        Option values                             : 0x00 0x12
        Option                                    : TX_DISABLE implemented
        BR margin max                             : 0%
        BR margin min                             : 0%
        Vendor SN                                 : B250312C2514
        Date code                                 : 250312
        Optical diagnostics support               : Yes
        Laser bias current                        : 6.000 mA
        Laser output power                        : 0.5008 mW / -3.00 dBm
        Receiver signal average optical power     : 0.6304 mW / -2.00 dBm
        Module temperature                        : 49.25 degrees C / 120.65 degrees F
        Module voltage                            : 3.3725 V
        Alarm/warning flags implemented           : Yes
        Laser bias current high alarm             : Off
        Laser bias current low alarm              : Off
        Laser bias current high warning           : Off
        Laser bias current low warning            : Off
        Laser output power high alarm             : Off
        Laser output power low alarm              : Off
        Laser output power high warning           : Off
        Laser output power low warning            : Off
        Module temperature high alarm             : Off
        Module temperature low alarm              : Off
        Module temperature high warning           : Off
        Module temperature low warning            : Off
        Module voltage high alarm                 : Off
        Module voltage low alarm                  : Off
        Module voltage high warning               : Off
        Module voltage low warning                : Off
        Laser rx power high alarm                 : Off
        Laser rx power low alarm                  : Off
        Laser rx power high warning               : Off
        Laser rx power low warning                : Off
        Laser bias current high alarm threshold   : 15.000 mA
        Laser bias current low alarm threshold    : 1.000 mA
        Laser bias current high warning threshold : 13.000 mA
        Laser bias current low warning threshold  : 2.000 mA
        Laser output power high alarm threshold   : 1.9952 mW / 3.00 dBm
        Laser output power low alarm threshold    : 0.1584 mW / -8.00 dBm
        Laser output power high warning threshold : 1.5848 mW / 2.00 dBm
        Laser output power low warning threshold  : 0.1778 mW / -7.50 dBm
root@OpenWrt:~# ethtool -m sfp-wan                                                  Identifier                                : 0x03 (SFP)
        Extended identifier                       : 0x04 (GBIC/SFP defined by 2-wire interface ID)
        Connector                                 : 0x07 (LC)                       Transceiver codes                         : 0x00 0x00 0x00 0x01 0x20 0x40 0x0c 0x05 0x00                                                                Transceiver type                          : FC: 100 MBytes/sec
        Encoding                                  : 0x01 (8B/10B)
        BR Nominal                                : 1300MBd
        Rate identifier                           : 0x00 (unspecified)
        Length (SMF)                              : 0km
        Length (OM2)                              : 80m
        Length (OM1)                              : 30m
        Length (Copper or Active cable)           : 0m
        Length (OM3)                              : 300m
        Laser wavelength                          : 850nm
        Vendor name                               : OEM
        Vendor OUI                                : 00:01:9c                        Vendor PN                                 : SFP-10GE-T-I
        Vendor rev                                : 2
        Option values                             : 0x00 0x12                       Option                                    : TX_DISABLE implemented
        BR margin max                             : 0%
        BR margin min                             : 0%
        Vendor SN                                 : B250312C2514
        Date code                                 : 250312
        Optical diagnostics support               : Yes
        Laser bias current                        : 6.000 mA
        Laser output power                        : 0.5008 mW / -3.00 dBm
        Receiver signal average optical power     : 0.6304 mW / -2.00 dBm
        Module temperature                        : 49.25 degrees C / 120.65 degrees F                                                                          Module voltage                            : 3.3725 V
        Alarm/warning flags implemented           : Yes
        Laser bias current high alarm             : Off
        Laser bias current low alarm              : Off
        Laser bias current high warning           : Off
        Laser bias current low warning            : Off
        Laser output power high alarm             : Off
        Laser output power low alarm              : Off
        Laser output power high warning           : Off
        Laser output power low warning            : Off
        Module temperature high alarm             : Off
        Module temperature low alarm              : Off
        Module temperature high warning           : Off
        Module temperature low warning            : Off
        Module voltage high alarm                 : Off
        Module voltage low alarm                  : Off
        Module voltage high warning               : Off
        Module voltage low warning                : Off
        Laser rx power high alarm                 : Off
        Laser rx power low alarm                  : Off
        Laser rx power high warning               : Off
        Laser rx power low warning                : Off
        Laser bias current high alarm threshold   : 15.000 mA
        Laser bias current low alarm threshold    : 1.000 mA
        Laser bias current high warning threshold : 13.000 mA
        Laser bias current low warning threshold  : 2.000 mA
        Laser output power high alarm threshold   : 1.9952 mW / 3.00 dBm
        Laser output power low alarm threshold    : 0.1584 mW / -8.00 dBm
        Laser output power high warning threshold : 1.5848 mW / 2.00 dBm
        Laser output power low warning threshold  : 0.1778 mW / -7.50 dBm
        Module temperature high alarm threshold   : 95.00 degrees C / 203.00 degrees F
        Module temperature low alarm threshold    : -45.00 degrees C / -49.00 degrees F
        Module temperature high warning threshold : 85.00 degrees C / 185.00 degrees F
        Module temperature low warning threshold  : -40.00 degrees C / -40.00 degrees F
        Module voltage high alarm threshold       : 3.6000 V
        Module voltage low alarm threshold        : 3.0000 V
        Module voltage high warning threshold     : 3.5000 V
        Module voltage low warning threshold      : 3.1000 V
        Laser rx power high alarm threshold       : 1.1220 mW / 0.50 dBm
        Laser rx power low alarm threshold        : 0.0199 mW / -17.01 dBm
        Laser rx power high warning threshold     : 1.0000 mW / 0.00 dBm
        Laser rx power low warning threshold      : 0.0223 mW / -16.52 dBm
lan
root@OpenWrt:~# ethtool -m sfp-lan
        Identifier                                : 0x03 (SFP)
        Extended identifier                       : 0x04 (GBIC/SFP defined by 2-wire interface ID)
        Connector                                 : 0x21 (Copper pigtail)
        Transceiver codes                         : 0x00 0x00 0x00 0x00 0x00 0x04 0x00 0x00 0x00
        Transceiver type                          : Passive Cable
        Encoding                                  : 0x00 (unspecified)
        BR Nominal                                : 10300MBd
        Rate identifier                           : 0x00 (unspecified)
        Length (SMF)                              : 0km
        Length (OM2)                              : 0m
        Length (OM1)                              : 0m
        Length (Copper or Active cable)           : 1m
        Length (OM3)                              : 0m
        Passive Cu cmplnce.                       : 0x01 (SFF-8431 appendix E [SFF-8472 rev10.4 only])
        Vendor name                               : OEM
        Vendor OUI                                : 00:40:20
        Vendor PN                                 : SFP-10G-CU0.3M
        Vendor rev                                : 03
        Option values                             : 0x00 0x00
        BR margin max                             : 0%
        BR margin min                             : 0%
        Vendor SN                                 : 2507010004
        Date code                                 : 250701

Both work great :+1: