Support for RTL838x based managed switches

I was wondering what do next with the patches for HP-1920-24G-POE (j925a j926a) support that I have? In particular the issue is around the fan speed control. I think the cooling zone support via devicetree is probably the right way to do it (and then add userspace or kernel control later based on whatever the OEM firmware does, or whatever is felt to be a reasonable alternative), but when the kernel loads it currently resets the GPIO state, and so switches the fan to low speed, so I think this needs looking into so that it leaves it in whatever state the bootload sets (high speed) if practical.

Thoughts?

That reminded me of this which I wrote many years ago:

(only the top commit - the rest is old and outdated, and already merged in some form. Simply included because it was in my old devel branch and rebasing without fixing makes no sense)

Posted now in case it is useful as a starting point for someone. Needs some love, and I'm unable to provide that. All I know is that I tested it and it worked back when it was written

2 Likes

So, from the table, there are only 1GB port switches supported?
Any chance of the cheap Chinese 2.5GB/10GB managed switch supported?
Like this one, I am thinking of purchasing:

https://www.servethehome.com/the-most-feature-packed-2-5gbe-and-10gbe-mini-switch-to-date-hasivo-s600wp-4gt-1sx-1xgt-se-review/

Though, I see this one is based on Realtek RTL8372

There is support for at least some 2.5G and 10G switches. Some hardware lacks ToH entries (help needed!). e.g. Zyxel XGS1210-12 and XGS1010-12 are both 8x 1G, 2x 2.5G, 2x 10G (SFP+).

1 Like

I got the XGS1210-12 v2 running on main with Olliver's patches for the v1. SFP+ works, but I'm stuck on the 2.5 GbE PHYs (which are RTL8221B on the v2 instead of RTL8226).

XGS1250-12 kind of works as well and is officially supported.

1 Like

Is there some external means for determining v1 vs v2? I got one a couple years ago and the label just says "Model: XGS1210-12", so ... v1???

Yeah, if your device label does not specify any revision, it's a v1.

1 Like

Hi,

is the GS1900 v2 Series supported? Do they share the same Hardware as v1? what is the difference?

  • GS1900-8-EU0102F - Zyxel GS1900-8 V2 (8 Port GbE L2 smart switch, desktop, fanless, V2)
  • GS1900-8HP-EU0103F - Zyxel GS1900-8HP V3 (8 Port GbE L2 PoE Smart Switch, 802.3at, desktop, fanless, 70 Watt)
  • GS1900-10HP-EU0102F - Zyxel GS1900-10HP V2 (8 Port GbE L2 PoE+ Smart Switch + 2 SFP slots, 802.3at, desktop, fanless, 77 Watt)
  • GS1900-24E-EU0102F - Zyxel GS1900-24E V2 (24 Port GbE L2 Smart Switch, desktop, fanless V2)
  • GS1900-24E-EU0103F - Zyxel GS1900-24E V3 (24 Port GbE L2 Smart Switch, desktop, fanless V3)
  • GS1900-24-EU0102F - Zyxel GS1900-24 V2 (24 Port GbE L2 Smart Switch, rackmount, fanless V2)
  • GS1900-24EP-EU0101F - Zyxel GS1900-24EP (24 Port GbE L2 Smart Switch,12x PoE+ Ports,130Watt, rackmount)
  • GS190024HPV2-EU0101F - Zyxel GS1900-24HP V2 (24 Port GbE L2 PoE+ Smart Switch, rackmount, 170 Watt)
  • GS1900-48-EU0102F - Zyxel GS1900-48 V2 (48 Port GbE L2 Smart Switch, rackmount)
  • GS190048HPV2-EU0101F - Zyxel GS1900-48HP V2 (48 Port GbE L2 PoE+ Smart Switch, 170 Watt rackmount, V2)

Some, yes - there are individual images available for:

  • GS1900-8HP v1 and v2; the OpenWrt images are identical apart from the identification
  • GS1900-24HP v1 and v2; the v1 has only 64MiB RAM, the v2 has 128MiB

what did Zyxel change from GS1900-8 to GS1900-8 v2 ?

edit: that's the only thing i found in the docs

Some clues can be gleaned from the firmware ZyXEL offers for the GS1900-8. If that is just a single binary for both A1 and B1 revisions, chances are they're nearly identical (and if not that B1 is probably easy to port to OpenWrt). But it remains guessing until someone opens a B1 revision up and compares with A1 pictures.

@rahulrock213 Do those logs come from a GS1900-8 B1?

I don't think so, the prompt says RTL9300, that's a multigig SoC. A waste to put that in a 'plain' gigabit switch. He didn't share any make and model, just a few logs.

Is there a device with SFP+ ports that is already working or at least is likely to be working someday with OpenWrt? I'm looking for a device with 4+ SFP+ and 16+ 1G ports.
I'm planning on getting a new switch and it'd superb if it could run OpenWrt.

1 Like

@Borromini anyway, with regard with your previous message, the A1 PCB appears to be covered in heatsinks, so how would examining the B1 one help?

Also from what I could tell, all the firmware releases for the GS1900-8 claim to support both revisions.
I would like to try and mount the fs image, what format might it be using?

Little point if everyhing is covered with heatsinks indeed. You can try the initramfs image, hook up serial and load it over TFTP, as per the instructions on the device's wiki page. If anything breaks, you can pull the plug and it will boot from flash next time you give it power.

1 Like

Pic of a GS1900-8 B1

U-Boot Version: 2.0.2.1 (May 21 2021 - 12:21:20)

CPU:   500MHz
DRAM:  128 MB
FLASH: 16 MB
Model: ZyXEL_GS1900_8v2
SN:    S223Cxxxxxxxx
MAC:   50:E0:39:XX:XX:XX - 50:E0:39:XX:XX:XX

Press SPACE to abort boot script:  0 
## Booting image from partition ... 0
   Version:   V2.80.0
   Created:   2023-10-16  10:38:39 UTC
   Size:      6084981 Bytes = 5.8 MB
   Verifying Checksum ... OK
   Uncompressing Image ... OK

Anything else you need?

That's lovely!
Have you tried booting openwrt? And could you tell if there are noticeable hardware differences?

The PCB is quite different, but that doesn't necessarily mean it appears differently to the firmware.

1 Like

It tried to boot via tftp, but did not succeed.

From the device page it's not clear to me, how to get it to tftpboot.

I interrupted the boot process and could then select bootp or tftpboot.

  • Using the first I tried to put the initramfs with a tftp client.
  • Using the later I setup a tftp server serving the initramfs as file 0101A8C0.img from 192.168.1.111.
    At least this is what the tftpboot option was looking for.
RTL838x# tftpboot
*** Warning: no boot file name; using '0101A8C0.img'
Using rtl8380#0 device
TFTP from server 192.168.1.111; our IP address is 192.168.1.1
Filename '0101A8C0.img'.
Load address: 0xb4100000
Loading: T T T T 

Sorry for my noob questions.