realtek: Add support for Netgear S350 series switches GS308T and GS310TP
authorRaylynn Knight <rayknight@me.com>
Wed, 5 May 2021 16:11:44 +0000 (12:11 -0400)
committerPetr Štetiar <ynezz@true.cz>
Fri, 7 May 2021 05:05:16 +0000 (07:05 +0200)
commitc829bc1f2c3c47e230905864f2f5f8c759f88ce6
treee0a62c19230d58507e2e23fadd069c60d7a8af19
parentdaa586082740842e86c72c5c0e58320897a7d277
realtek: Add support for Netgear S350 series switches GS308T and GS310TP

The Netgear GS308T v1 is an 8 port gigabit switch.  The GS310TP v1 is an 8
port POE+ gigabit switch with 2 SFP Ports (currently untested).

The GS308T v1 and GS310TP v1 are quite similar to the Netgear GS1xx
devices already supported.  Theses two devices use the same Netgear
firmware and are very similar to there corresponding GS1xx devices. For
this reason they share a large portion of the device tree with the GS108T
and GS110TP with exception of the uimage magic and model and compatible
values.

All of the above feature a dual firmware layout, referred to as Image0
and Image1 in the Netgear firmware.

In order to manipulate the PoE+ on the GS310TP v1 , one needs the
rtl83xx-poe package

Specifications (GS308T)
----------------------

 * RTL8380M SoC, 1 MIPS 4KEc core @ 500MHz
 * 128MB DDR3-1600 DRAM (Winbond W631GG8MB-12)
 * 32MB 3v NOR SPI Flash (Winbond W25Q256JVFQ)
 * RTL8231 GPIO extender to control the LEDs and the reset button
 * 8 x 10/100/1000BASE-T ports, internal PHY (RTL8218B)
 * UART (115200 8N1) via unpopulated standard 0.1" pin header marked J1
 * Power is supplied via a 12V 1A barrel connector

Specifications (GS310TP)
----------------------

 * RTL8380M SoC, 1 MIPS 4KEc core @ 500MHz
 * Nuvoton M0516LDN for controlling PoE
 * 128MB DDR3-1600 DRAM (Winbond W631GG8MB-12)
 * 32MB 3v NOR SPI Flash (Winbond W25Q256JVFQ)
 * RTL8231 GPIO extender to control the LEDs and the reset button
 * 8 x 10/100/1000BASE-T PoE+ ports, 2 x Gigabit SFP ports,
 internal PHY (RTL8218B)
 * UART (115200 8N1) via unpopulated standard 0.1" pin header marked J1
 * Power is supplied via a 54V 1.25A barrel connector

Both devices have UART pinout
-----------

J1 | [o]ooo
      ^ ||`------ GND
      | |`------- RX         [TX out of the serial adapter]
      | `-------- TX         [RX into the serial adapter]
      `---------- Vcc (3V3)  [the square pin]

The through holes are filled with PB-free solder which melts at 375C.
They can also be drilled using a 0.9mm bit.

Installation
------------
Instructions are identical to those for the similar Negear devices
and apply both to the GS308T v1 and GS310TP v1 as well.
-------------------
Boot initramfs image from U-Boot
--------------------------------

 1. Press the Escape key at the `Hit Esc key to stop autoboot` prompt
 2. Init network with `rtk network on` command
 3. Load image with `tftpboot 0x8f000000
openwrt-realtek-generic-netgear_gs308t-v1-initramfs-kernel.bin` command
 4. Boot the image with `bootm` command

The switch defaults to IP 192.168.1.1 and tries to fetch the image via
TFTP from 192.168.1.111.

Updating the installed firmware
-------------------------------

The OpenWRT ramdisk image can be flashed directly from the Netgear UI.
The Image0 slot should be used in order to enable sysupgrade.

As with similar switches, changing the active boot partition can be
accomplished in U-Boot as follows:

 1. Press the Escape key at the `Hit Esc key to stop autoboot` prompt
 2. Run `setsys bootpartition {0|1}` to select the boot partition
 3. Run `savesys` followed by `boota` to proceed with the boot process

Signed-off-by: Raylynn Knight <rayknight@me.com>
target/linux/realtek/base-files/etc/board.d/02_network
target/linux/realtek/dts/rtl8380_netgear_gigabit.dtsi
target/linux/realtek/dts/rtl8380_netgear_gigabit_1xx.dtsi [new file with mode: 0644]
target/linux/realtek/dts/rtl8380_netgear_gigabit_3xx.dtsi [new file with mode: 0644]
target/linux/realtek/dts/rtl8380_netgear_gs108t-v3.dts
target/linux/realtek/dts/rtl8380_netgear_gs110tpp-v1.dts
target/linux/realtek/dts/rtl8380_netgear_gs308t-v1.dts [new file with mode: 0644]
target/linux/realtek/dts/rtl8380_netgear_gs310tp-v1.dts [new file with mode: 0644]
target/linux/realtek/image/Makefile