openwrt/target/linux
Harshal Gohel f84371ddb5 realtek: rtl930x: Add support for Plasma Cloud MCX3 Media Converter
The Plasma Cloud MCX3 Media Converter is a 3 port multi-GBit switch with
2x 10/100/1000/2500BaseT Ethernet ports and 1x SFP+ module slot.

Hardware:

- RTL9302C SoC
- Macronix MX25L25645G (32MB flash)
- Winbond W632GU6rB-11 (256MB DDR3 SDRAM)
- RTL8224 4x 10m/100m/1/2.5 Gigabit PHY
- IC+ IP802AR POE+ PSE controller

The media converter is powered by 54 Volts 1.2A barrel connector. The
internal TTL serial connector can be used to access the terminal. Pins from
1: TX RX (unused) GND. Serial connection is via 115200 baud, 8N1.

A reset button is accessible through a hole next to the SFP+ module slot.

Installation
------------

* The device can be flashed by using sysupgrade command. Either from the
  original vendor firmware or using an initramfs (see "Debug")
* Connect serial as per the layout above. Connection parameters: 115200 8N1
* The image must be copied using scp to /tmp of the device

      scp openwrt-realtek-rtl930x-plasmacloud_mcx3-squashfs-sysupgrade.bin root@[IP address of the device]:/tmp/

* start sysupgrade without saving the original vendor configuration

      sysupgrade -n /tmp/openwrt-realtek-rtl930x-plasmacloud_mcx3-squashfs-sysupgrade.bin

Installation via u-boot
-----------------------

If you have an TFTP server connected to the switch, it is possible to
directly install the device using the factory image from u-boot

    # setup networking and IP of TFP server
    rtk network on
    setenv ipaddr 10.100.100.99
    setenv serverip 10.100.100.20

    # get factory image
    tftp 0x84000000 factory.bin

    # erase firmware partitions
    sf probe 0
    sf erase 0x100000 0x01f00000

    # write firmware to both partitions
    sf write ${fileaddr} 0x100000 ${filesize}
    sf write ${fileaddr} 0x1080000 ${filesize}

    # adjust the boot commands
    setenv bootargs "mtdparts=spi0.0:896k(u-boot),64k(u-boot-env),64k(u-boot-env2),15872k(inactive),15872k(firmware2)"
    setenv bootcmd "rtk init; bootm 0xb5080000"

    # restart
    reset

Debug
-----

* Connect serial as per the layout above. Connection parameters: 115200 8N1.
* A tftp server is required, tftpd-hpa works well.
* Power the device, at U-Boot start rapidly hit Esc key to stop autoboot
* Enable network:

      rtk network on

* Change ip address of device:

      setenv ipaddr 192.168.1.6

* Download initramfs from TFTP server:

      tftpboot 0x84000000 192.168.1.111:openwrt-realtek-rtl930x-plasmacloud_mcx3-initramfs-kernel.bin

* Boot loaded file:

      bootm 0x84000000

Signed-off-by: Harshal Gohel <hg@simonwunderlich.de>
Signed-off-by: Sven Eckelmann <se@simonwunderlich.de>
Link: https://github.com/openwrt/openwrt/pull/20625
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-11-07 21:12:58 +01:00
..
airoha kernel: bump 6.12 to 6.12.56 2025-11-06 22:06:54 +01:00
apm821xx apm821xx: dts: explicitly set the partition reg size for Netgear WNDR4700 2025-10-19 21:55:33 +02:00
armsr armsr: Make kernel modules depend on target 2025-07-26 01:11:21 +02:00
at91 treewide: strip trailing whitespace 2025-05-20 00:47:37 +02:00
ath79 kernel: bump 6.12 to 6.12.55 2025-10-25 01:08:12 +02:00
bcm27xx kernel: bump 6.12 to 6.12.56 2025-11-06 22:06:54 +01:00
bcm47xx bcm47xx: fix no previous prototype error 2025-11-05 08:39:07 +01:00
bcm53xx bcm53xx: modify 180-usb-xhci-add-support-for-performing-fake-doorbell.patch 2025-10-19 16:25:15 +02:00
bcm4908 bcm63xx-cfe: install into image staging dir 2025-04-13 10:44:19 +02:00
bmips bmips: fix leds on f@st3864op 2025-10-26 22:53:11 +01:00
d1 kernel: remove duplicate PREEMPT settings 2025-06-08 15:59:55 +02:00
econet kernel: bump 6.12 to 6.12.52 2025-10-22 23:35:45 +02:00
gemini gemini: Add module for VSC73xx switches 2025-09-15 23:12:56 +02:00
generic kernel: bump 6.6 to 6.6.116 2025-11-06 22:19:12 +01:00
imx kernel: bump 6.6 to 6.6.103 2025-09-01 02:05:24 +02:00
ipq40xx ipq40xx: use NVMEM-on-UBI for ASUS Lyra and introduce label mac 2025-11-01 19:31:15 +01:00
ipq806x ipq806x: drop support for kernel 6.6 2025-11-04 19:31:07 +01:00
ixp4xx ixp4xx: Add back Actiontec MI424WR A/C/D 2025-09-26 23:40:40 +02:00
kirkwood kirkwood: dts: explicitly set the partition reg size for Blackarmor NAS220 2025-10-19 21:55:33 +02:00
lantiq kernel: bump 6.12 to 6.12.55 2025-10-25 01:08:12 +02:00
layerscape layerscape: remove 6.6 kernel files 2025-11-04 23:19:28 +01:00
loongarch64 loongarch64: switch to Linux 6.12 by default 2025-09-09 00:10:31 +02:00
malta malta: drop 6.6 support 2025-07-20 23:37:37 +02:00
mediatek mediatek: remove non-existing mt7987-2p5g-phy-firmware-internal 2025-11-07 12:03:05 +00:00
mpc85xx mpc85xx: p1010: kernel: add missing symbol 2025-10-16 22:23:44 +02:00
mvebu kernel: bump 6.12 to 6.12.54 2025-10-22 23:37:13 +02:00
mxs mxs: drop 6.6 support 2025-05-24 16:15:53 +02:00
octeon treewide: replace numbers with GPIO_ACTIVE 2025-10-08 14:26:24 +02:00
omap omap: enable 6.12 testing kernel 2025-08-22 20:18:16 +02:00
pistachio treewide: reset-gpio to reset-gpios 2025-10-08 14:26:24 +02:00
qoriq qoriq: dts: add missing reg property for WatchGuard Firebox M300 2025-10-19 21:55:34 +02:00
qualcommax qualcommax: ipq5018: glinet-gl-b3000: fix dts nvmem macs 2025-11-05 21:21:41 +01:00
qualcommbe qualcommbe: drop duplicated patches 2025-10-22 20:16:59 +02:00
ramips treewide: fix mistaken executable bit on dts files 2025-11-06 22:14:56 +01:00
realtek realtek: rtl930x: Add support for Plasma Cloud MCX3 Media Converter 2025-11-07 21:12:58 +01:00
rockchip kernel: bump 6.12 to 6.12.55 2025-10-25 01:08:12 +02:00
sifiveu kernel: remove duplicate PREEMPT settings 2025-06-08 15:59:55 +02:00
siflower generic: backport phylink patches for PCS/PHY caps OPs 2025-10-22 12:29:41 +02:00
starfive kernel: bump 6.12 to 6.12.56 2025-11-06 22:06:54 +01:00
stm32 stm32: drop kernel 6.6 support 2025-10-22 14:56:15 +02:00
sunxi sunxi: cortexa53: refresh kernel config 2025-10-20 00:48:11 +02:00
tegra tegra: add 6.12 as testing kernel 2025-07-13 00:49:37 +02:00
uml kernel: bump 6.12 to 6.12.33 2025-06-12 12:42:15 +02:00
x86 x86/64: enable 8250_DW 2025-10-10 10:32:20 +02:00
zynq zynq: disable unused Vitesse PHY 2025-09-08 14:21:50 +02:00
Makefile linux: fix missing default packages in profiles.json 2024-11-17 19:29:06 +01:00