openwrt/package/boot/uboot-envtools/files
Jianyu Zhuang e0813dc071 mediatek: filogic: add support for Tenbay WR3000K
Tenbay WR3000K is an 802.11ax (Wi-Fi 6) router, based on MediaTek MT7981B.

- SoC: MetiaTek MT7981B
- RAM: Hynex H5TQ2G863GFR 512MiB
- Flash: Winbond W25N01GVZEIG 128MiB
- Wi-Fi: MediaTek MT7976C (2.4GHz/5GHz, 802.11ax, 2x2 MIMO, AX3000)
- MediaTek MT7915E: 2.4GHz and 5GHz
- Ethernet: 1x 10/100/1000 Mbps WAN + 3x 10/100/1000 Mbps LAN
- Switch: MediaTek MT7531AE
- UART: J4 (115200 baud)
- LEDs: Power
- Buttons: Reset, WPS
- PWR: 12V/1A DC, 5.5×2.1 connector

| Vendor  | OpenWrt Interface | Address       | Notes                                          |
|---------|-------------------|---------------|------------------------------------------------|
| WAN     | wan            | Label MAC     |  Stored MAC in factory + offset 4, label MAC is Stored MAC - 2   |
| LAN     | br-lan             | Label MAC+1   |              |
| 2.4GHz  | phy0-ap0          | Label MAC + 2     |             |
| 5GHz    | phy1-ap0          | Label MAC + 3     |              |

- 0x000000000000-0x000000100000 : "BL2"
- 0x000000100000-0x000000180000 : "u-boot-env"
- 0x000000180000-0x000000380000 : "Factory"
- 0x000000380000-0x000000580000 : "FIP"
- 0x000000580000-0x000003580000 : "ubi"
- 0x000003580000-0x000006580000 : "ubi1"
- 0x000006580000-0x0000065a0000 : "Product"
- 0x0000065a0000-0x000007580000 : "Custom"

- The original partition-Ubi partition-Ubi1 is an AB dual system, and Openwrt only uses Ubi. So flash requires modifying the uboot variable `boot_from=ubi` to ensure that it only starts from Ubi.

- The Product and Custom partitions are original and only exist to align with the original layout; they are not used by OpenWrt.

- id: 0, kernel
- id: 1, rootfs
- id: 2, rootfs_data

- **USB-to-TTL Serial Adapter** (e.g., CH340 or CP2102).
- **Dupont Wires** (male-to-male, 3 wires).
- **PC/Laptop** with a serial communication tool.
- Screwdriver (to open the router case).

1. **OpenWrt Firmware**:
   - Download the appropriate `wr3000k-<build_time>-mediatek-filogic-tenbay_wr3000k-squashfs-sysupgrade.bin` firmware file for your router from the [OpenWrt website](https://openwrt.org/).
2. **Serial Communication Tool**:
   - Windows: PuTTY, Tera Term.
   - Linux/Mac: Minicom, screen.
3. (Optional) **TFTP Server**:
   - Install a TFTP server like Tftpd64 or tftp-hpa.

---

1. Open the router casing and locate the **TX, RX, and GND** pins.
2. Connect the router pins to the USB-to-TTL adapter as follows:
   - **TX (router)** → **RX (adapter)**
   - **RX (router)** → **TX (adapter)**
   - **GND (router)** → **GND (adapter)**
3. Do **not** connect the VCC pin to avoid damage.

- **Baud rate**: 115200
- **Data bits**: 8
- **Stop bits**: 1
- **Parity**: None
- **Flow control**: None

---

1. Power on the router and observe the serial terminal output.
2. When prompted (e.g., `Hit any key to stop autoboot: 3`), press the '/' key quickly to interrupt the boot process.
3. You will see the U-Boot Boot Menu:
```plaintext
*** U-Boot Boot Menu ***

    1. Factory mode
    2. Startup system (Default)
    3. Upgrade firmware
    4. Upgrade ATF BL2
    5. Upgrade ATF FIP
    6. Upgrade single image
    7. Load image
    0. U-Boot console

Press UP/DOWN to move, ENTER to select, ESC/CTRL+C to quit
```
4. Select Option 0 by typing 0 and pressing Enter.
5. Input into
```plaintext
MT7981> setenv boot_from ubi
MT7981> saveenv
Saving Environment to MTD... Erasing on MTD device 'nmbm0'... OK
Writing to MTD device 'nmbm0'... OK
OK
MT7981> printenv
baudrate=115200
boot_from=ubi
...
```
the above indicates system will start from *ubi*.
and then type
```plaintext
MT7981> reset
```
will boot from *ubi*

1. Power on the router and observe the serial terminal output.
2. When prompted (e.g., `Hit any key to stop autoboot: 3`), press the '/' key quickly to interrupt the boot process.
3. You will see the U-Boot Boot Menu:
```plaintext
*** U-Boot Boot Menu ***

    1. Factory mode
    2. Startup system (Default)
    3. Upgrade firmware
    4. Upgrade ATF BL2
    5. Upgrade ATF FIP
    6. Upgrade single image
    7. Load image
    0. U-Boot console

Press UP/DOWN to move, ENTER to select, ESC/CTRL+C to quit
```
4. Choose Option 3: Upgrade Firmware
Enter Upgrade Mode
Select Option 3 by typing 3 and pressing Enter.
Upgrade Methods
You will be prompted to choose between:
```plaintext
*** Upgrading Firmware ***

Run image after upgrading? (Y/n): y

Available load methods:
    0 - TFTP client (Default)
    1 - Xmodem
    2 - Ymodem
    3 - Kermit
    4 - S-Record
    5 - RAM

Select (enter for default): 0

Input U-Boot's IP address: 192.168.1.1
Input TFTP server's IP address: 192.168.1.10
Input IP netmask: 255.255.255.0
Input file name: wr3000k-<build_time>-mediatek-filogic-tenbay_wr3000k-squashfs-sysupgrade.bin
```
Type Enter to proceed. The router will erase the old firmware and write the new one.

Signed-off-by: Jianyu Zhuang <xzjianyu@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17172
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
2024-12-22 18:45:01 +01:00
..
apm821xx apm821xx: prepare WNDR4700 for 6.6 - add preliminary u-boot-env access 2024-04-05 09:26:26 +02:00
ath79 ath79: Add support for Sophos AP15C 2024-11-09 03:21:36 +01:00
cns3xxx uboot-envtools: drop shebang from uci-defaults and lib files 2021-04-10 15:18:14 +02:00
fw_defaults uboot-envtools: add a board.d script to load defaults from the environment 2024-10-02 15:41:33 +02:00
fw_loadenv uboot-envtools: add fw_loadenv tool 2024-10-02 15:41:33 +02:00
fw_printsys uboot-envtools: add wrapper scripts for alternate config 2021-04-08 09:20:59 +02:00
fw_setsys uboot-envtools: add wrapper scripts for alternate config 2021-04-08 09:20:59 +02:00
imx_cortexa7 uboot-envtools: imx: cortexa7: add TechNexion PICO-PI-IMX7D 2022-07-11 14:28:03 +02:00
imx_cortexa9 uboot-envtools: move imx to imx_cortexa9 2021-11-03 12:45:40 +01:00
ipq40xx ipq40xx: add support for Linksys WHW03 V1 2024-05-05 10:33:13 +02:00
ipq806x ipq806x: add support for Extreme Networks AP3935 2023-10-05 00:56:57 +02:00
kirkwood kirkwood: add D-Link DNS-320L support 2024-06-01 01:29:09 +02:00
lantiq uboot-envtools: drop shebang from uci-defaults and lib files 2021-04-10 15:18:14 +02:00
layerscape layerscape: remove Traverse LS1043 boards 2023-07-01 15:47:08 +02:00
mediatek_filogic mediatek: filogic: add support for Tenbay WR3000K 2024-12-22 18:45:01 +01:00
mediatek_mt7622 uboot-envtools: add u-boot system env config for Xiaomi Redmi AX6S 2024-09-06 23:40:04 +02:00
mediatek_mt7623 uboot-envtools: replace use of platform_get_bootdev 2024-02-26 01:29:22 +00:00
mediatek_mt7629 mediatek: Add support for Linksys EA7500 v3 2024-08-15 00:13:20 +02:00
mpc85xx mpc85xx: add support for Enterasys WS-AP3715i 2023-04-08 14:41:01 +02:00
mvebu uboot-envtools: add settings for Synology DS213j 2023-11-20 13:40:17 +00:00
mxs uboot-envtools: drop shebang from uci-defaults and lib files 2021-04-10 15:18:14 +02:00
octeon octeon: n821: add Cisco vEdge 1000 base 2023-07-15 17:05:58 +02:00
oxnas uboot-envtools: oxnas: fix wrong eraseblock size for shuttle,kd20 2022-03-21 20:16:16 +00:00
pistachio uboot-envtools: drop shebang from uci-defaults and lib files 2021-04-10 15:18:14 +02:00
qoriq qoriq: add support for WatchGuard Firebox M300 2021-12-21 21:37:46 +02:00
qualcommax_ipq60xx qualcommax: ipq60xx: add Linksys MR7350 support 2024-12-07 16:00:58 +01:00
qualcommax_ipq807x ipq807x: add support for TP-Link EAP620 HD v1 2024-12-22 11:36:23 +01:00
ramips ramips: add support for ASUS 4G-AX56 2024-12-13 15:29:04 +01:00
realtek uboot-envtools: add support for APRESIA ApresiaLightGS120GT-SS 2023-02-13 12:22:17 +01:00
rockchip_armv8 uboot-envtools: Add support for Orange Pi R1 Plus & LTS 2024-08-12 21:00:36 +02:00
uboot-envtools.sh uboot-envtools: add support for multiple config partitions 2021-04-08 09:20:59 +02:00