openwrt/target/linux
Maximilian Weinmann 8fcfb21b16 ramips: Add support for Beeline SmartBox TURBO+
This adds support for Beeline Smart Box TURBO+ (Serсomm S3 CQR) router.

Device specification
--------------------
SoC Type: MediaTek MT7621AT (880 MHz, 2 cores)
RAM (Nanya NT5CC64M16GP): 128 MiB
Flash (Macronix MX30LF1G18AC): 128 MiB
Wireless 2.4 GHz (MT7603EN): b/g/n, 2x2
Wireless 5 GHz (MT7615N): a/n/ac, 4x4
Ethernet: 5 ports - 5×GbE (WAN, LAN1-4)
USB ports: 1xUSB3.0
Buttons: 2 button (reset, wps)
LEDs: Red, Green, Blue
Zigbee (EFR32MG1B232GG): 3.0
Stock bootloader: U-Boot 1.1.3
Power: 12 VDC, 1.5 A

Installation (fw 2.0.9)
-----------------------
1.  Login to the web interface under SuperUser (root) credentials.
    Password: SDXXXXXXXXXX, where SDXXXXXXXXXX is serial number of the
    device written on the backplate stick.
2.  Navigate to Setting -> WAN. Add:
       Name - WAN1
       Connection Type - Static
       IP Address - 172.16.0.1
       Netmask - 255.255.255.0
    Save -> Apply. Set default: WAN1
3.  Enable SSH and HTTP on WAN. Setting -> Remote control. Add:
       Protocol - SSH
       Port - 22
       IP Address - 172.16.0.1
       Netmask - 255.255.255.0
       WAN Interface - WAN1
    Save ->Apply
    Add:
       Protocol - HTTP
       Port - 80
       IP Address - 172.16.0.1
       Netmask - 255.255.255.0
       WAN interface - WAN1
    Save -> Apply
4.  Set up your PC ethernet:
       Connection Type - Static
       IP Address - 172.16.0.2
       Netmask - 255.255.255.0
       Gateway - 172.16.0.1
5.  Connect PC using ethernet cable to the WAN port of the router
6.  Connect to the router using SSH shell under SuperUser account
7.  Make a mtd backup (optional, see related section)
8.  Change bootflag to Sercomm1 and reboot:
        printf 1 | dd bs=1 seek=7 count=1 of=/dev/mtdblock3
        reboot
9.  Login to the router web interface under admin account
10. Remove dots from the OpenWrt factory image filename
11. Update firmware via web using OpenWrt factory image

Revert to stock
---------------
Change bootflag to Sercomm1 in OpenWrt CLI and then reboot:
   printf 1 | dd bs=1 seek=7 count=1 of=/dev/mtdblock3

mtd backup
----------
1. Set up a tftp server (e.g. tftpd64 for windows)
2. Connect to a router using SSH shell and run the following commands:
      cd /tmp
      for i in 0 1 2 3 4 5 6 7 8 9 10; do nanddump -f mtd$i /dev/mtd$i; \
      tftp -l mtd$i -p 172.16.0.2; md5sum mtd$i >> mtd.md5; rm mtd$i; done
      tftp -l mtd.md5 -p 171.16.0.2

Recovery
--------
Use sercomm-recovery tool.
Link: https://github.com/danitool/sercomm-recovery

MAC Addresses (fw 2.0.9)
------------------------
+-----+------------+---------+
| use | address    | example |
+-----+------------+---------+
| LAN | label      | *:e8    |
| WAN | label + 1  | *:e9    |
| 2g  | label + 4  | *:ec    |
| 5g  | label + 5  | *:ed    |
+-----+------------+---------+
The label MAC address was found in Factory 0x21000

Factory image format
--------------------
+---+-------------------+-------------+--------------------+
| # | Offset            | Size        | Description        |
+---+-------------------+-------------+--------------------+
| 1 | 0x0               | 0x200       | Tag Header Factory |
| 2 | 0x200             | 0x100       | Tag Header Kernel1 |
| 3 | 0x300             | 0x100       | Tag Header Kernel2 |
| 4 | 0x400             | SIZE_KERNEL | Kernel             |
| 5 | 0x400+SIZE_KERNEL | SIZE_ROOTFS | RootFS(UBI)        |
+---+-------------------+-------------+--------------------+

Co-authored-by: Mikhail Zhilkin <csharper2005@gmail.com>
Signed-off-by: Maximilian Weinmann <x1@disroot.org>
2023-06-11 13:36:38 +08:00
..
airoha airoha: spi-en7523: Fix compile warning 2023-05-31 21:30:49 +02:00
apm821xx apm821xx: switch over from DTB_SIZE to DEVICE_DTC_FLAGS 2023-06-09 22:28:45 +02:00
archs38 treewide: remove files for building 5.10 kernel 2023-05-12 13:02:43 +02:00
armsr uboot-armsr: add support for QEMU armv7/armv8 2023-06-10 21:50:22 +02:00
at91 treewide: remove files for building 5.10 kernel 2023-05-12 13:02:43 +02:00
ath25 kernel: refresh IFF_NO_IP_ALIGN ifdef for kernel >= 6.1 2023-05-22 22:28:17 +02:00
ath79 ath79: add support for D-Link DIR-859 A3 2023-05-22 14:45:03 +02:00
bcm27xx bcm27xx: remove kernel v5.15 support 2023-06-09 19:12:30 +02:00
bcm47xx treewide: Disable building 8M RAM devices 2023-05-21 01:08:31 +02:00
bcm53xx nu801: add kmod-leds-uleds to MR26 + MR18 2023-05-18 16:17:52 +02:00
bcm63xx treewide: Disable building 32M RAM devices 2023-05-21 01:08:22 +02:00
bcm4908 kernel: bump 5.15 to 5.15.111 2023-05-13 22:38:35 +02:00
bmips bmips: add support for Netgear DGND3700 v1, DGND3800B 2023-06-10 15:37:52 +02:00
gemini gemini: Bump to kernel v6.1 2023-06-01 23:54:20 +02:00
generic generic: 5.15: refresh patches 2023-06-10 06:56:19 +02:00
imx imx: image: ventana: add blkdev compressed disk image 2023-05-18 17:11:43 +02:00
ipq40xx generic: backport initial LEDs hw control support 2023-06-06 11:01:31 +02:00
ipq806x generic: backport initial LEDs hw control support 2023-06-06 11:01:31 +02:00
ipq807x ipq807x: image: fix eMMC flashing/recovery from within initramfs 2023-06-10 21:29:08 +02:00
kirkwood kirkwood: add support for Iomega Storcenter ix4-200d 2023-05-20 15:35:37 +02:00
lantiq lantiq: replace random_ether_addr with eth_random_addr 2023-06-10 12:40:29 +02:00
layerscape generic: backport initial LEDs hw control support 2023-06-06 11:01:31 +02:00
malta malta: 6.1: enable kernel for testing 2023-05-28 07:45:50 +02:00
mediatek mediatek: use DEVICE_DTC_FLAGS and drop DTC_FLAGS where not needed 2023-06-06 13:26:19 +01:00
mpc85xx mpc85xx: 5.15: refresh kernel patches 2023-06-10 06:56:19 +02:00
mvebu kernel: Backport mvneta crash fix to 5.15 2023-06-03 21:15:11 +02:00
mxs generic: enable CONFIG_ARM_CRYPTO for 32bit arm targets 2023-05-10 19:01:45 +02:00
octeon kernel: Set CONFIG_FRAME_WARN depending on target 2023-06-02 11:19:32 +02:00
octeontx kernel: enable (ARM|ARM64)_MODULE_PLTS in generic config 2023-05-23 05:49:46 -07:00
omap treewide: remove files for building 5.10 kernel 2023-05-12 13:02:43 +02:00
oxnas oxnas: Enable CONFIG_CRYPTO_LZ4 2023-06-08 17:25:22 +02:00
pistachio treewide: cleanup kernel symbol references 2023-05-12 13:02:44 +02:00
qoriq kernel: fix handling of CONFIG_DYNAMIC_DEBUG 2023-05-03 10:26:17 -07:00
ramips ramips: Add support for Beeline SmartBox TURBO+ 2023-06-11 13:36:38 +08:00
realtek generic: backport initial LEDs hw control support 2023-06-06 11:01:31 +02:00
rockchip kernel: Set CONFIG_FRAME_WARN depending on target 2023-06-02 11:19:32 +02:00
sifiveu kernel: Set CONFIG_FRAME_WARN depending on target 2023-06-02 11:19:32 +02:00
sunxi kernel: Set CONFIG_FRAME_WARN depending on target 2023-06-02 11:19:32 +02:00
tegra treewide: remove files for building 5.10 kernel 2023-05-12 13:02:43 +02:00
uml uml: add Kernel 6.1 support via testing 2023-05-28 20:22:23 +02:00
x86 x86/64: Enable IOMMU_V2 support for later CPUs 2023-06-03 21:15:11 +02:00
zynq generic: enable CONFIG_ARM_CRYPTO for 32bit arm targets 2023-05-10 19:01:45 +02:00
Makefile build: fix issues with targets installed via feeds 2022-09-27 13:41:12 +02:00