1
1
openwrt/package/boot
Taiga Ogawa 587a1a8872 qualcommax: ipq50xx: add support for ELECOM WRC-X3000GST2
ELECOM WRC-X3000GST2 is a 2.4/5 GHz band 11ax (Wi-Fi 6) router based on
IPQ5018. The only hardware difference from the WRC-X3000GS2 is the RAM
capacity; all other peripherals are identical. This port therefore
reuses the GS2 board-2.bin (ipq-wifi-elecom_wrc-x3000gs2) and ath11k
calibration variant.

Specification:

- SoC             : Qualcomm IPQ5018
- RAM             : DDR3 512 MiB (Kingston Technology D2516ECMDXGJD)
- Flash           : SPI-NAND 128 MiB (Macronix MX35UF1G24AD-Z4I)
- WLAN            : 2.4/5 GHz 2T2R
  - 2.4 GHz       : Qualcomm IPQ5018 (SoC)
  - 5 GHz         : Qualcomm QCN6122
- Ethernet        : 5x 10/100/1000 Mbps
  - wan (phy)     : Qualcomm IPQ5018 (SoC)
  - lan (switch)  : Qualcomm Atheros QCA8337
- LEDs/Keys (GPIO): 8x / 3x (reset, WPS, router/AP slide switch)
- UART            : through-hole on PCB, 4pins near the barcode
  - assignment    : 3.3V, TX, RX, NC, GND from the barcode side
  - settings      : 115200n8
- Power           : 12 VDC, 1 A (Max. 11.5W)

Flash instruction using factory.bin image:

1. Boot WRC-X3000GST2 normally in router mode
2. Access the WebUI ("http://192.168.2.1/") and open the firmware
   update page ("ファームウェア更新")
3. Select the OpenWrt factory.bin image and click apply ("適用")
4. After the device reboots automatically, wait until the green power LED
   stops blinking and stays solid
5. When the green power LED is solid, hold the reset button until the red
   LED starts blinking to clear remaining stock firmware settings

Switching to the stock firmware:

1. Load the elecom.sh script

   . /lib/upgrade/elecom.sh

2. Check the current index of rootfs

   bootconfig_rw_index 0:bootconfig rootfs

3. Set the index to inverted value

   bootconfig_rw_index 0:bootconfig rootfs <value>
   bootconfig_rw_index 0:bootconfig1 rootfs <value>

   example:

   - step2 returned "0":

     bootconfig_rw_index 0:bootconfig rootfs 1
     bootconfig_rw_index 0:bootconfig1 rootfs 1

   - step2 returned "1":

     bootconfig_rw_index 0:bootconfig rootfs 0
     bootconfig_rw_index 0:bootconfig1 rootfs 0

4. Reboot

Partition Layout (Stock FW):

0x000000000000-0x000000080000 : "0:SBL1"
0x000000080000-0x000000100000 : "0:MIBIB"
0x000000100000-0x000000140000 : "0:BOOTCONFIG"
0x000000140000-0x000000180000 : "0:BOOTCONFIG1"
0x000000180000-0x000000280000 : "0:QSEE"
0x000000280000-0x000000380000 : "0:QSEE_1"
0x000000380000-0x0000003c0000 : "0:DEVCFG"
0x0000003c0000-0x000000400000 : "0:DEVCFG_1"
0x000000400000-0x000000440000 : "0:CDT"
0x000000440000-0x000000480000 : "0:CDT_1"
0x000000480000-0x000000500000 : "0:APPSBLENV"
0x000000500000-0x000000640000 : "0:APPSBL"
0x000000640000-0x000000780000 : "0:APPSBL_1"
0x000000780000-0x000000880000 : "0:ART"
0x000000880000-0x000000900000 : "0:TRAINING"
0x000000900000-0x000003c40000 : "rootfs"
0x000003c40000-0x000003fc0000 : "Config"
0x000003fc0000-0x000007300000 : "rootfs_1"
0x000007300000-0x000007680000 : "Config_2"
0x000007680000-0x000007b80000 : "Reserved"
0x000007b80000-0x000007c00000 : "FWHEADER"
0x000007c00000-0x000007c80000 : "Factory"

Notes:

- This device has dual-boot feature and it's managed by the index in the
  0:bootconfig and 0:bootconfig1 partitions.

- Wi-Fi BDF is shared with WRC-X3000GS2 (ipq-wifi-elecom_wrc-x3000gs2)
  as the hardware (SoC, QCN6122, antennas) is identical between the two
  models.

- GST2 stock firmware keeps its configuration even when sysupgrade is
  called with -n. When installing from the OEM WebUI, those stock
  settings can be restored into OpenWrt overlay, so settings must be
  initialized after the first OpenWrt boot.

MAC Addresses:

LAN    : 38:97:A4:xx:xx:40 (0:APPSBLENV, "eth1addr"/"ethaddr"  (text))
WAN    : 38:97:A4:xx:xx:43 (0:APPSBLENV, "eth0addr" (text))
2.4 GHz: 38:97:A4:xx:xx:41 (0:APPSBLENV, "wifi0"    (text))
5 GHz  : 38:97:A4:xx:xx:42 (0:APPSBLENV, "wifi1"    (text))

Signed-off-by: Taiga Ogawa <zectaiga@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/23471
Signed-off-by: Robert Marko <robimarko@gmail.com>
2026-05-26 18:56:17 +02:00
..
apex treewide: package: update missed hashes after switch to ZSTD 2024-04-07 14:56:04 +02:00
arm-trusted-firmware-bcm63xx treewide: remove references for obsolete binutils versions 2026-04-18 19:34:21 +02:00
arm-trusted-firmware-mediatek atf-mediatek: add mt7981 UBI DDR3-1866 build 2026-05-09 15:42:26 +02:00
arm-trusted-firmware-microchipsw boot: arm-trusted-firmware-microchipsw: depend on host Ruby 2026-01-12 18:01:17 +01:00
arm-trusted-firmware-mvebu arm-trusted-firmware-mvebu: bump to 2.14 2026-04-11 12:23:36 +02:00
arm-trusted-firmware-rockchip arm-trusted-firmware-rockchip: bump to 2.14.0 2026-01-15 16:33:26 +02:00
arm-trusted-firmware-stm32 arm-trusted-firmware-stm32: bump to v2.14 2026-02-26 23:34:10 +01:00
arm-trusted-firmware-sunxi arm-trusted-firmware-sunxi: bump to 2.14 2026-02-08 00:56:16 +01:00
arm-trusted-firmware-tools arm-trusted-firmware-tools: update to version 2.12 2025-02-13 03:16:40 +00:00
at91bootstrap at91bootstrap: put at91bootstrap images into image staging directory 2025-04-04 14:39:00 +02:00
fconfig treewide: unify OpenWrt hosted source via @OPENWRT 2021-02-05 12:00:24 -10:00
grub2 treewide: use HTTPS URL for GNU websites 2026-01-02 18:07:02 +01:00
imx-bootlets treewide: use HTTPS for PKG_SOURCE_URL where possible 2026-04-20 11:58:37 +08:00
kexec-tools kexec-tools: add zstd to package dependencies 2026-01-28 23:56:15 +01:00
kobs-ng treewide: use HTTPS for PKG_SOURCE_URL where possible 2026-04-20 11:58:37 +08:00
mt7623n-preloader mt7623n-preloader: remove mt7622-preloader 2021-02-28 04:12:23 +00:00
opensbi opensbi: update tarball hash compressed by the zstd 1.5.7 2025-07-13 16:24:10 +02:00
optee-os-stm32 optee-os-stm32: bump to 4.9.0 2026-02-26 23:34:10 +01:00
rkbin rkbin: pack rk3528 atf/tpl blobs 2025-11-15 19:56:27 +01:00
tfa-layerscape treewide: remove references for obsolete binutils versions 2026-04-18 19:34:21 +02:00
uboot-airoha airoha: increase the size of reserved_bmt partition 2026-05-11 14:43:01 +02:00
uboot-armsr boot: uboot-armsr: update to U-Boot 2025.04 2025-05-22 18:50:24 +02:00
uboot-at91 uboot-at91: fix wrong BUILD_DEVICES for sama5d4_xplained_nandflash 2026-04-20 18:07:56 +02:00
uboot-ath79 uboot-ath79: update to v2026.04 2026-05-25 22:06:34 +02:00
uboot-bcm53xx uboot-bcm53xx: bump U-Boot to 2025.10 2026-01-06 01:15:46 +01:00
uboot-bcm4908 uboot-bcm4908: fix build with GCC14 2025-05-23 00:10:23 +02:00
uboot-bmips uboot-bmips: drop usage of AUTORELEASE 2025-10-29 21:09:56 +01:00
uboot-d1 uboot-d1: update to 2024.01 2026-01-23 10:35:35 +01:00
uboot-fritz4040 uboot-fritz4040: update to Git HEAD (2026-03-08) 2026-03-14 21:46:31 +01:00
uboot-imx treewide: replace AUTORELEASE with real PKG_RELEASE 2023-05-18 11:35:29 +02:00
uboot-kirkwood kirkwood: add support for D-Link DNS-325 A1 2025-11-25 15:41:38 +01:00
uboot-lantiq uboot-lantiq: fix C-style comments in AWK scripts 2026-03-23 01:23:33 +01:00
uboot-layerscape uboot-layerscape: do not build efimkcapsule tool 2025-08-22 11:24:43 +02:00
uboot-mediatek mediatek: add support for netis EAP930 V1 2026-05-26 00:50:00 +02:00
uboot-microchipsw uboot-microchipsw: add FIP update flashing shortcut 2026-01-23 11:07:23 +01:00
uboot-mvebu uboot-mvebu: update to version 2026.04 2026-05-15 20:59:47 +02:00
uboot-mxs packages: refresh patches 2024-05-31 11:30:06 +02:00
uboot-omap treewide: replace AUTORELEASE with real PKG_RELEASE 2023-05-18 11:35:29 +02:00
uboot-qoriq package: uboot-qoriq: fix T4240RDB u-boot selection 2026-01-12 13:59:30 +01:00
uboot-rockchip rockchip: add support for FriendlyELEC NanoPi M5 2026-05-14 17:52:56 +02:00
uboot-sifiveu uboot-sifiveu: fix build with swig 4.3.0 2025-10-25 22:33:53 +02:00
uboot-stm32 uboot-stm32: bump to 2026.01 2026-02-26 23:34:10 +01:00
uboot-sunxi sunxi: add T113-S3 support 2026-05-09 11:19:22 +02:00
uboot-tegra uboot-tegra: disable mkeficapsule build 2025-07-13 17:18:15 +02:00
uboot-tools qualcommax: ipq50xx: add support for ELECOM WRC-X3000GST2 2026-05-26 18:56:17 +02:00
uboot-zynq packages: refresh patches 2024-05-31 11:30:06 +02:00