openwrt/target/linux
Jan Hoffmann 10504e0c6b realtek: add support for Zyxel XGS1010-12 A1
This device is very similar to the already supported XGS1210-12 A1. For
now, only revision A1 is supported (not marked on the label).

Hardware:
- RTL9302B SoC
- 16 MiB NOR flash
- 128 MiB DDR3 SDRAM
- 8x 1G RJ45 (RTL8218D)
- 2x 2.5G RJ45 (2x RTL8226)
- 2x SFP+ (supporting 1G/2.5G/10G)
- 3.3V UART serial (115200 baud 8N1) on the right side of the case
  (from bottom to top: GND, RX, TX, VCC)

It is originally an unmanaged switch, so there are a few differences:
- No reset button
- Different partition layout: There is some reserved space in the middle
  of the flash which might be used by the bootloader for flash testing.
  The remaining space in between is used for OpenWrt using mtd-concat.
  The largest contiguous area is at the beginning, allowing a maximum
  kernel size of 7 MiB.
- No individual MAC address: This device ships with an empty U-Boot
  environment. When an OpenWrt squashfs image is booted for the first
  time, a random MAC address will be written to the environment (but
  only if the environment has been initialized from the bootloader
  before and contains the default MAC address).

Steps to boot initramfs image via network:
- Configure a TFTP server to provide the OpenWrt initramfs image
- Connect to device using serial (see hardware information above)
- Power on the device and enter U-Boot using Esc when prompted
- Run the following commands (adjust as necessary):
  # rtk network on
  # tftpboot 0x84f00000 192.168.1.100:openwrt-xgs1010-initramfs.bin
  # bootm

Installation on flash:
- Boot initramfs image as described above
- Now is a good time to create a backup of all flash partitions! You'll
  need this if you want to revert to the unmanaged factory firmware at
  some point.
- Use sysupgrade to install OpenWrt
- After restart enter U-Boot again and set the boot command:
  # setenv bootcmd 'rtk network on; bootm 0xb4900000'
  # saveenv
  # run bootcmd
  Note: The command "rtk network on" is only needed because the drivers
  currently rely on some setup by the bootloader (without this the RJ45
  ports don't work). If the drivers improve in the future, it should be
  removed (i.e. change the boot command to "bootm 0xb4900000").

Reverting to factory firmware:
- Write back your backup of the firmware partition (or write just the
  fwconcat1 partition, and erase the other two fwconcat partitions)
- Change the boot command back to "boota" (or just erase the u-boot-env
  partition so the default gets used)

Signed-off-by: Jan Hoffmann <jan@3e8.eu>
Link: https://github.com/openwrt/openwrt/pull/20469
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-11-03 11:07:20 +01:00
..
airoha airoha: support openwrt,netdev-name for renaming interfaces 2025-10-29 22:01:23 +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 bcm27xx: package kmod-drm-v3d 2025-11-02 12:53:29 +00:00
bcm47xx treewide: strip trailing whitespace 2025-05-20 00:47:37 +02: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: rtl8261n: Add support for Serdes RX swap 2025-10-29 19:37:18 +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: fix sorting in base-files 2025-11-01 19:39:18 +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 generic: backport phylink patches for PCS/PHY caps OPs 2025-10-22 12:29:41 +02: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/filogic: fix Totolink X6000R sysupgrade failed 2025-10-31 10:19:38 +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 kernel: bump 6.12 to 6.12.53 2025-10-22 23:35:45 +02:00
qualcommbe qualcommbe: drop duplicated patches 2025-10-22 20:16:59 +02:00
ramips targetwide: imagebuilder: add explicit guards around initramfs rules 2025-10-21 11:38:18 +02:00
realtek realtek: add support for Zyxel XGS1010-12 A1 2025-11-03 11:07:20 +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.53 2025-10-22 23:35:45 +02: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