realtek: add support for NicGiga S100-0800S-M
The NicGiga S100-0800S-M is an 8-port 10G SFP+ managed switch built on
the Realtek RTL9303 reference design (vendor U-Boot reports board model
"RTL9303_8XGE", board id 1). It is closely related to the TP-Link
TL-ST1008F v2 and shares its general layout, but differs in how the SFP
cages and port LEDs are wired (see below).
This DTS is derived from the TP-Link TL-ST1008F v2 support added by
Jonas Jelonek <jelonek.jonas@gmail.com> and Balazs Triszka
<balika011@gmail.com> in commit
39b9b491bb ("realtek: add support for
TP-Link TL-ST1008F v2.0").
Specifications:
- SoC: Realtek RTL9303
- RAM: 512 MiB DDR3
- Flash: 32 MiB SPI-NOR
- Ethernet: 8x 10G SFP+ (RTL9303 SerDes 2-9)
- UART: 115200 8N1 on the front-panel RJ45 console port (Cisco-style pinout)
MAC address:
The MAC addresses are read from the ethaddr variable in the vendor U-Boot
environment via the u-boot-env nvmem layout: the base address is assigned
to the SoC ethernet controller and an incrementing per-port offset to each
SFP port.
SFP presence and port LEDs:
Unlike the TP-Link TL-ST1008F v2, this board does not route the cage
MOD_ABS lines to the SoC GPIO controller (gpio0 pins 0-7 read stuck-low,
so an empty cage reads "present"), and the single PCA9534 I2C expander is
fully used for TX_DISABLE. No mod-def0-gpio is therefore provided; module
presence, including runtime hot-insertion and removal, is detected by
polling the SFP EEPROM over I2C. Each cage has a single green LED, driven
active-low.
Installation:
Interrupt the vendor U-Boot and TFTP-boot an OpenWrt initramfs image:
setenv ipaddr 192.168.1.1
setenv serverip <tftp-server>
tftpboot 0x82000000 <...-initramfs-kernel.bin>
bootm 0x82000000
From the running initramfs, flash with:
sysupgrade -n <...-squashfs-sysupgrade.bin>
Signed-off-by: Greg Patrick <gregspatrick@hotmail.com>
Link: https://github.com/openwrt/openwrt/pull/23579
Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>