immortalwrt/target/linux
Andreas Böhler 5f8c86e654 realtek: add support for TP-Link SG2452P v4 aka T1600G-52PS v4
This is an RTL8393-based switch with 802.3af on all 48 ports.

Specifications:
---------------
 * SoC:       Realtek RTL8393M
 * Flash:     32 MiB SPI flash
 * RAM:       256 MiB
 * Ethernet:  48x 10/100/1000 Mbps with PoE+
 * Buttons:   1x "Reset" button, 1x "Speed" button
 * UART:      1x serial header, unpopulated
 * PoE:       12x TI TPS23861 I2C PoE controller, 384W PoE budget
 * SFP:       4 SFP ports

Works:
------
  - (48) RJ-45 ethernet ports
  - Switch functions
  - Buttons
  - All LEDs on front panel except port LEDs
  - Fan monitoring and basic control

Not yet enabled:
----------------
  - PoE - ICs are not in AUTO mode, so the kernel driver is not usable
  - Port LEDs
  - SFP cages

Install via web interface:
-------------------------

Not supported at this time.

Install via serial console/tftp:
--------------------------------

The U-Boot firmware drops to a TP-Link specific "BOOTUTIL" shell at
38400 baud. There is no known way to exit out of this shell, and no
way to do anything useful.

Ideally, one would trick the bootloader into flashing the sysupgrade
image first. However, if the image exceeds 6MiB in size, it will not
work. To install OpenWRT:

Prepare a tftp server with:
 1. server address: 192.168.0.146
 2. the image as: "uImage.img"

Power on device, and stop boot by pressing any key.
Once the shell is active:
 1. Ground out the CLK (pin 16) of the ROM (U6)
 2. Select option "3. Start"
 3. Bootloader notes that "The kernel has been damaged!"
 4. Release CLK as soon as bootloader thinks image is corrupted.
 5. Bootloader enters automatic recovery -- details printed on console
 6. Watch as the bootloader flashes and boots OpenWRT.

Blind install via tftp:
-----------------------

This method works when it's not feasible to install a serial header.

Prepare a tftp server with:
 1. server address: 192.168.0.146
 2. the image as: "uImage.img"
 3. Watch network traffic (tcpdump or wireshark works)
 4. Power on the device.
 5. Wait 1-2 seconds then ground out the CLK (pin 16) of the ROM (U6)
 6. When 192.168.0.30 makes tftp requests, release pin 16
 7. Wait 2-3 minutes for device to auto-flash and boot OpenWRT

Signed-off-by: Andreas Böhler <dev@aboehler.at>
2022-09-10 22:13:52 +02:00
..
airoha airoha: Add new target platform 2022-09-05 11:12:32 +02:00
apm821xx kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
archs38 kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
armvirt kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
at91 at91bootstrap: use sdmmc0 as booting media for sama5d27_som1_ek 2022-09-02 20:43:51 +02:00
ath25 kernel: bump 5.10 to 5.10.137 2022-08-23 10:37:04 +02:00
ath79 ath79: add support for ZTE MF281 2022-09-08 13:57:18 +02:00
bcm27xx kernel: fix build on bcm27xx target platform 2022-09-10 01:26:53 +01:00
bcm47xx kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
bcm53xx kernel: bump 5.15 to 5.15.67 2022-09-09 21:08:37 +01:00
bcm63xx kernel: bump 5.15 to 5.15.62 2022-08-23 10:37:04 +02:00
bcm4908 bcm4908: fix Asus GT-AX6000 image 2022-09-03 20:43:07 +02:00
bmips kernel: bump 5.15 to 5.15.67 2022-09-09 21:08:37 +01:00
gemini kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
generic kernel: backport MediaTek USB Bluetooth additions 2022-09-09 21:08:37 +01:00
imx kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
ipq40xx ipq40xx: add LTE packages for GL-AP1300 2022-09-09 18:15:23 +02:00
ipq806x kernel: bump 5.15 to 5.15.62 2022-08-23 10:37:04 +02:00
kirkwood kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
lantiq kernel: bump 5.10 to 5.10.137 2022-08-23 10:37:04 +02:00
layerscape kernel: bump 5.10 to 5.10.137 2022-08-23 10:37:04 +02:00
malta kernel: Activate CONFIG_INPUT_MISC on all targets 2022-08-10 21:36:17 +02:00
mediatek mediatek: filogic: use WPS button instead of RST on BPi-R3 2022-09-10 19:20:26 +01:00
mpc85xx mpc85xx: Drop pci aliases to avoid domain changes 2022-09-02 21:21:31 +02:00
mvebu kernel: bump 5.15 to 5.15.67 2022-09-09 21:08:37 +01:00
mxs kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
octeon kernel: bump 5.15 to 5.15.63 2022-08-25 22:07:43 +02:00
octeontx kernel: bump 5.10 to 5.10.138 2022-08-25 20:23:59 +02:00
omap kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
oxnas kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
pistachio kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
qoriq kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
ramips kernel: mtk_eth_soc: fix hw hash reporting for MT7986 2022-09-07 04:21:41 +01:00
realtek realtek: add support for TP-Link SG2452P v4 aka T1600G-52PS v4 2022-09-10 22:13:52 +02:00
rockchip rockchip: add system-LED aliases specific to OpenWrt 2022-09-10 01:55:54 +02:00
sunxi kernel: bump 5.10 to 5.10.137 2022-08-23 10:37:04 +02:00
tegra kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
uml generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-24 17:10:24 +02:00
x86 x86: setup netdev paths for MX100 2022-09-10 21:16:39 +02:00
zynq kernel: Activate CONFIG_GPIOLIB in generic configuration 2022-08-10 21:36:17 +02:00
Makefile