Switching WAN to SFP

Hi,
I’m trying to switch eth2 to the SFP port so I can use HALNY HL-GSFP module (the old page on wiki says it’s supported).

I’m running TOS 6.2.2, I ran nor-update without any parameters. I found out, buried deep in the release notes of TOS 5, that on my HW revision (the first one, from Indiegogo), I need to do the switch manually, so I created a symlink /boot/armada-385-turris-omnia-sfp.dtb /boot/dtb. However, even after several reboots, dmesg | grep sfp returns nothing and when I plug a cable to the WAN RJ45 port (while the SFP module is inserted), Turris uses it. I even tried doing factory reset.

ethtool eth2
Settings for eth2:
	Supported ports: [ TP MII FIBRE ]
	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: Unknown!
	Duplex: Unknown! (255)
	Port: Twisted Pair
	PHYAD: 1
	Transceiver: external
	Auto-negotiation: on
	MDI-X: Unknown
	Supports Wake-on: pg
	Wake-on: d
	Link detected: no
dmesg | grep eth2
[    1.719031] mvneta f1034000.ethernet eth2: Using device tree mac address d8:58:d7:00:3a:e1
[   13.329224] mvneta f1034000.ethernet eth2: PHY [f1072004.mdio-mii:01] driver [Marvell 88E1510] (irq=POLL)
[   13.339297] mvneta f1034000.ethernet eth2: configuring for phy/sgmii link mode
readlink /boot/dtb

/boot/armada-385-turris-omnia-sfp.dtb

Any help is really appreciated, I’m completely lost.

@lucenera this might be the issue you described on IRC that SFP port is returning to copper. Sounds like it?

@MekliCZ I am using this GPON on my Omnia with success after Turris Team did some patches described here:

But I am on HBL branch so TOS7.0 and it works fine.

I just switched to HBL but no luck, it still uses copper, no sfp in dmesg.

Check your symbolic link again. It should work. I am also using the oldest revision of Omnia.

Tried rebooting again, still doesn’t work. Symlink points to sfp.dtb.

dtc -I dtb -O dts -o - /boot/dtb
...
	sfp {
		compatible = "sff,sfp";
		i2c-bus = <0x22>;
		tx-fault-gpios = <0x23 0x00 0x00>;
		tx-disable-gpios = <0x23 0x01 0x00>;
		rate-select0-gpios = <0x23 0x02 0x00>;
		los-gpios = <0x23 0x03 0x00>;
		mod-def0-gpios = <0x23 0x04 0x01>;
		maximum-power-milliwatt = <0xbb8>;
		status = "okay"; #<--------
		phandle = <0x10>;
	};
...

corresponds to

dtc -I dtb -O dts -o - /boot/armada-385-turris-omnia-sfp.dtb
	sfp {
		compatible = "sff,sfp";
		i2c-bus = <0x22>;
		tx-fault-gpios = <0x23 0x00 0x00>;
		tx-disable-gpios = <0x23 0x01 0x00>;
		rate-select0-gpios = <0x23 0x02 0x00>;
		los-gpios = <0x23 0x03 0x00>;
		mod-def0-gpios = <0x23 0x04 0x01>;
		maximum-power-milliwatt = <0xbb8>;
		status = "okay"; #<--------
		phandle = <0x10>;
	};

while

dtc -I dtb -O dts -o - /boot/armada-385-turris-omnia-phy.dtb
...
	sfp {
		compatible = "sff,sfp";
		i2c-bus = <0x23>;
		tx-fault-gpios = <0x24 0x00 0x00>;
		tx-disable-gpios = <0x24 0x01 0x00>;
		rate-select0-gpios = <0x24 0x02 0x00>;
		los-gpios = <0x24 0x03 0x00>;
		mod-def0-gpios = <0x24 0x04 0x01>;
		maximum-power-milliwatt = <0xbb8>;
		status = "disabled"; #<--------
		phandle = <0x10>;
	};
...

has status = "disabled" (the same for dtc -I fs /sys/firmware/devicetree/base).

Maybe I messed something up with nor-update? Did you ever manually update uboot @AreYouLoco?

root@router:~# strings /dev/mtd0 | grep U-Boot
U-Boot SPL 2022.10-rc4-OpenWrt-r16653+119-44ce70f0e2 (Sep 15 2022 -
 18:21:35 +0000)

Maybe you are not pushing GPON module all the way in? I am trying to look for other causes.
I got my GPON from ISP already configured.

Tried pushing pretty hard (it felt like I’m gonna break something). Seems all the way in to me.

We tried plugging another fibre SFP module (not GPON), rebooting and nothing, ethtools eth2 still showed Port: Twisted Pair.

Contact tech.support@turris.cz

hi @MekliCZ
did you send the issue to tech support?
If so did you get any answer/solution?

I’m in the same situation and I’m reluctant to send my inquiry.

Thanks