1
1
openwrt/target/linux
INAGAKI Hiroshi a40a1e5d02 mediatek: add support for ELECOM WRC-X6000GSD
ELECOM WRC-X6000GSD is a 4804Mbps 4xMIMO 2.4/5 GHz 11ax (Wi-Fi 6) router
with 2.5Gbps WAN (stock: 1Gbps max.), based on MT7986B

Specification:

- SoC             : MediaTek MT7986BLA
- RAM             : DDR3 512 MiB (SoC)
- Flash           : Winbond 128MiB SPI NAND (W25N01GVZEIG)
- WLAN            : 2.4/5 GHz 4T4R (MediaTek MT7986)
- Ethernet        : 5x 10/100/1000(/2500) Mbps
  - wan           : Maxlinear Ethernet GPY211C (max. 2500M)
  - lan           : MediaTek MT7531 (max. 1000M)
- LEDs/Keys (GPIO): 11x/4x
- UART            : through-hole on PCB (J1)
  - assignment    : 3.3V, TX, RX, NC, GND from tri-angle marking
  - settings      : 115200n8
- Power           : 12 VDC, 2 A

Flash layout:
dev:  offset     size        name
mtd0: 0x00000000 0x00100000 "BL2"
mtd1: 0x00100000 0x00080000 "Ubootenv"
mtd2: 0x00180000 0x00200000 "Factory"
mtd3: 0x00380000 0x00200000 "FIP"
mtd4: 0x00580000 0x00020000 "Fwheader"
mtd5: 0x005a0000 0x03200000 "ubi"
mtd6: 0x037a0000 0x00380000 "Config"
mtd7: 0x03b20000 0x00020000 "Fwheader_2"
mtd8: 0x03b40000 0x03200000 "ubi_2"
mtd9: 0x06d40000 0x00380000 "Config_2"
mtd10: 0x070c0000 0x00100000 "persist"
mtd11: 0x071c0000 0x00040000 "Mrd"
mtd12: 0x07200000 0x00380000 "Backup"

Flash instruction using factory.bin image:

1. Boot WRC-X6000GSD in router mode normally
2. Access to the WebUI ("http://192.168.2.1/") on the device
   -> その他設定 (Other settings)
   -> フォームウェア更新 (Update firmware)
   -> ローカルファイル指定 (Specify local file)
3. Select the OpenWrt factory.bin image and click apply ("適用") button
4. Wait ~120 seconds to complete flashing

Switching to the stock firmware:

1. Load the elecom.sh script
   . /lib/upgrade/elecom.sh

2. Check the current index of firmware partition
   mstc_rw_bootnum

3. Set the bootnum to opposite value between 1 and 2
   mstc_rw_bootnum value

   example:
   - step2 returned "1": mstc_rw_bootnum 2
   - step2 returned "2": mstc_rw_bootnum 1

4. Reboot, to stock FW

5. Flash the stock FW to fuly revert back to original.

Notes:

- With the stock firmware, it will flash to another partition and
  toggle boot to that partition when any firmware is flashed.
  For example when booting on ubi, the new firmware will be flashed
  to ubi_2 and the router will boot from ubi_2 afterwards.
  The 5th byte of the Persist partition is the boot value (0x01 or 0x02).

- bootmenu_delay=0 is set from factory so uboot menu is hidden by
  default.

- The hardware of WRC-X6000GSD is almost identical to WRC-X6000QS, but
  WAN (labeled as "INTERNET") port is limited to 1000 Mbps on stock FW.
  On OpenWrt FW, 2500 Mbps connection is available on that port.

MAC Addresses:

LAN   : 38:97:A4:xx:xx:58 (Factory, 0x2A(hex)/Ubootenv, "ethaddr"(text))
WAN   : 38:97:A4:xx:xx:5B (Factory, 0x24(hex))
2.4GHz: 38:97:A4:xx:xx:59 (Factory, 0x4(hex))
5GHz  : 38:97:A4:xx:xx:5A (Factory, 0xA(hex)

Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22926
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2026-05-03 01:14:11 +02:00
..
airoha kernel: bump 6.12 to 6.12.81 2026-04-30 01:31:44 +02:00
apm821xx kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
armsr kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
at91 kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
ath79 kernel: bump 6.12 to 6.12.83 2026-04-30 01:31:44 +02:00
bcm27xx kernel: bump 6.12 to 6.12.83 2026-04-30 01:31:44 +02:00
bcm47xx kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
bcm53xx bcm53xx: add ramdisk to FEATURES 2026-04-29 09:56:37 +02:00
bcm4908 kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
bmips treewide: use _scoped for loop 2026-04-16 21:17:43 +02:00
d1 d1: drop support for 6.12 2026-04-21 16:13:37 +02:00
econet treewide: use _scoped for loop 2026-04-16 21:17:43 +02:00
gemini gemini/kernel: drop v6.12 and default to v6.18 2026-04-17 18:01:06 +02:00
generic kernel: bump 6.12 to 6.12.85 2026-05-02 01:24:44 +02:00
imx imx: cortexa9: ventana, fix profiles names in profiles.json 2026-04-23 01:13:36 +02:00
ipq40xx kernel: bump 6.12 to 6.12.82 2026-04-30 01:31:44 +02:00
ipq806x chromium: Add #{address,size}-cells to /firmware 2026-04-16 14:18:45 +02:00
ixp4xx ixp4xx/kernel: drop v6.12 and default to v6.18 2026-04-16 08:35:38 +02:00
kirkwood kirkwood: switch to 6.18 kernel 2026-04-27 09:39:21 +02:00
lantiq lantiq: enable 6.18 testing kernel 2026-04-23 15:54:47 +02:00
layerscape layerscape: armv8_64b: traverse ten64-mtd fix ASU support 2026-04-16 20:38:51 +02:00
loongarch64 kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
malta malta: restore CONFIG_PAGE_BLOCK_MAX_ORDER=10 for 6.18 2026-04-11 18:11:03 +02:00
mediatek mediatek: add support for ELECOM WRC-X6000GSD 2026-05-03 01:14:11 +02:00
microchipsw microchipsw: fix LAN8814 QSGMII soft reset 2026-04-29 11:40:10 +02:00
mpc85xx mpc85xx: enable 6.18 testing kernel 2026-04-21 17:53:02 +02:00
mvebu mvebu: use libdeflate for gzip 2026-04-23 20:36:17 +02:00
mxs mxs: drop support for 6.12 2026-04-16 14:55:36 +02:00
octeon octeon: enable 6.18 testing kernel 2026-04-26 10:03:37 +02:00
omap kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
pistachio pistachio: drop support for 6.12 2026-04-18 12:02:48 +02:00
qoriq kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
qualcommax ipq50xx: add label-mac-device to Linksys MX5500 2026-04-29 10:07:09 +02:00
qualcommbe kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
ramips ramips: mt7621: disable CONFIG_PAGE_POOL_STATS 2026-04-30 10:42:06 +02:00
realtek realtek: dts: rtl93xx: use macro for PHY port definitions 2026-05-01 12:41:49 +02:00
rockchip rockchip: update irq affinity for RK3528 devices 2026-04-26 14:28:31 +02:00
sifiveu sifiveu: drop support for 6.12 2026-04-19 13:21:21 +02:00
siflower generic: backport MSI affinity support for DW PCIe 2026-04-26 14:28:31 +02:00
starfive starfive: enable 6.18 testing kernel 2026-04-21 14:49:35 +02:00
stm32 kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
sunxi sunxi: drop support for 6.12 2026-04-28 11:27:46 +02:00
tegra kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
uml kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
x86 x86: enable HYPERV_VMBUS 2026-04-26 10:27:47 +02:00
zynq kernel: 6.12: move CONFIG_CRYPTO_LIB_SHA1 to generic 2026-04-06 01:38:41 +02:00
Makefile linux: fix missing default packages in profiles.json 2024-11-17 19:29:06 +01:00