difos/target/linux
Mikhail Zhilkin 0ec8d991c2 ramips: add support for Etisalat S3
Etisalat S3 is a wireless WiFi 5 router manufactured by Sercomm company.

Device specification
--------------------
SoC Type: MediaTek MT7621AT
RAM: 256 MiB
Flash: 128 MiB
Wireless 2.4 GHz (MT7603EN): b/g/n, 2x2
Wireless 5 GHz (MT7615E): a/n/ac, 4x4
Ethernet: 5x GbE (WAN, LAN1, LAN2, LAN3, LAN4)
USB ports: 1x USB3.0
Button: 2 buttons (Reset & WPS)
LEDs:
   - 1x Status (RGB)
   - 1x 2.4G (blue, hardware, mt76-phy0)
   - 1x 5G (blue, hardware, mt76-phy1)
Power: 12 VDC, 1.5 A
Connector type: barrel
Bootloader: U-Boot

Installation
-----------------
1.  Login to the router web interface under admin account
2.  Navigate to Settings -> Configuration -> Save to Computer
3.  Decode the configuration. For example, using cfgtool.py tool (see
    related section):
       cfgtool.py -u configurationBackup.cfg
4.  Open configurationBackup.xml and find the following line:
    <PARAMETER name="Password" type="string" value="<your router serial \
       is here>" writable="1" encryption="1" password="1"/>
5.  Insert the following line after and save:
<PARAMETER name="Enable" type="boolean" value="1" writable="1" encryption="0"/>
6.  Encode the configuration. For example, using cfgtool.py tool:
       cfgtool.py -p configurationBackup.xml
7.  Upload the changed configuration (configurationBackup_changed.cfg) to
    the router
8.  Login to the router web interface (SuperUser:ETxxxxxxxxxx, where
    ETxxxxxxxxxx is the serial number from the backplate label)
9.  Navigate to Settings -> WAN -> Add static IP interface (e.g.
    10.0.0.1/255.255.255.0)
10. Navigate to Settings -> Remote cotrol -> Add SSH, port 22,
    10.0.0.0/255.255.255.0 and interface created before
11. Change IP of your client to 10.0.0.2/255.255.255.0 and connect the
    ethernet cable to the WAN port of the router
12. Connect to the router using SSH shell under SuperUser account
13. Run in SSH shell:
       sh
14. Make a mtd backup (optional, see related section)
15. Change bootflag to Sercomm1 and reboot:
       printf 1 | dd bs=1 seek=7 count=1 of=/dev/mtdblock3
       reboot
16. Login to the router web interface under admin account
17. Remove dots from the OpenWrt factory image filename
18. 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 10.0.0.2; md5sum mtd$i >> mtd.md5; rm mtd$i; done
      tftp -l mtd.md5 -p 10.0.0.2

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

MAC Addresses
-------------
+-----+------------+---------+
| use | address    | example |
+-----+------------+---------+
| LAN | label      | *:50    |
| WAN | label + 11 | *:5b    |
| 2g  | label + 2  | *:52    |
| 5g  | label + 3  | *:53    |
+-----+------------+---------+
The label MAC address was found in Factory 0x21000

cfgtool.py
----------
A tool for decoding and encoding Sercomm configs.
Link: https://github.com/r3d5ky/sercomm_cfg_unpacker

Co-authored-by: Karim Dehouche <karimdplay@gmail.com>
Co-authored-by: Maximilian Weinmann <x1@disroot.org>
Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
2022-12-13 23:06:20 +01:00
..
airoha airoha: disable swconfig 2022-11-27 13:18:29 +01:00
apm821xx kernel: bump 5.10 to 5.10.154 2022-11-12 17:05:13 +01:00
archs38 kernel: remove target specific CONFIG_IKCONFIG lines 2022-10-14 13:15:47 +02:00
armvirt kernel: disable CONFIG_CPU_LITTLE_ENDIAN in generic config 2022-10-21 13:47:01 +02:00
at91 at91: Remove CONFIG_PINCTRL_MCP23S08 configuration option 2022-10-31 00:46:15 +01:00
ath25 kernel: bump 5.10 to 5.10.137 2022-08-23 10:37:04 +02:00
ath79 kernel: bump 5.10 to 5.10.157 2022-12-11 02:43:28 +01:00
bcm27xx kernel: bump 5.15 to 5.15.82 2022-12-11 02:42:52 +01:00
bcm47xx mac80211: remove old legacy legacy drivers 2022-11-09 20:44:28 +01:00
bcm53xx bcm53xx: remove MR32's openwrt specific patch for LEDs 2022-12-12 09:06:17 +01:00
bcm63xx kernel: bump 5.15 to 5.15.62 2022-08-23 10:37:04 +02:00
bcm4908 treewide: uniform vendor name for ASUS 2022-11-16 23:30:11 +01:00
bmips kernel: disable CONFIG_CPU_LITTLE_ENDIAN in generic config 2022-10-21 13:47:01 +02:00
gemini gemini: Set proper default networks 2022-12-12 11:18:02 +01:00
generic generic: move pending 870 ca8210 fix crash patch to backport 2022-12-13 02:05:29 +01:00
imx cypress-nvram: consolidate NVRAM packages 2022-11-16 20:14:13 +01:00
ipq40xx ipq40xx: fix usb driver not loaded for GL-A1300 2022-12-11 03:06:54 +01:00
ipq806x kernel: bump 5.10 to 5.10.158 2022-12-11 02:43:28 +01:00
kirkwood kernel: remove hack patch, move kirkwood specific kmods to target modules.mk 2022-09-30 12:59:19 +02:00
lantiq lantiq: vr9: include usb driver for fritz 7430 2022-12-11 16:46:34 +01:00
layerscape layerscape: kmod-ppfe: Use ppfe driver as module 2022-11-27 13:18:29 +01:00
malta kernel: disable CONFIG_CPU_LITTLE_ENDIAN in generic config 2022-10-21 13:47:01 +02:00
mediatek mediatek: also move &slot0 from dtsi down to board dts 2022-12-07 01:45:14 +00:00
mpc85xx mpc85xx: fix missing kernel config symbol 2022-11-16 23:30:11 +01:00
mvebu Revert "mvebu: switch default kernel to 5.15" 2022-12-04 08:16:49 +01:00
mxs target/mxs: replace gpio-mcp23s08 with pinctrl-mcp23s08 2022-10-30 23:14:45 +01:00
octeon kernel: disable CONFIG_CPU_LITTLE_ENDIAN in generic config 2022-10-21 13:47:01 +02:00
octeontx kernel: disable CONFIG_CPU_LITTLE_ENDIAN in generic config 2022-10-21 13:47:01 +02:00
omap kernel: remove target specific CONFIG_IKCONFIG lines 2022-10-14 13:15:47 +02:00
oxnas kernel: bump 5.15 to 5.15.75 2022-10-30 17:54:59 +01:00
pistachio kernel: backport support for "linux,rootfs" in DT 2022-11-08 09:12:16 +01:00
qoriq kernel: add missing symbol in generic config 2022-11-16 20:23:34 +02:00
ramips ramips: add support for Etisalat S3 2022-12-13 23:06:20 +01:00
realtek realtek: update GPIO bindings for DGS-1210-10P 2022-12-09 00:13:51 +01:00
rockchip rockchip: enable watchdog driver 2022-12-04 15:21:12 +08:00
sunxi sunxi: fix sunxi-ir kconfig and description 2022-12-12 09:06:17 +01:00
tegra kernel: Move some IOMMU options to generic 2022-09-24 13:49:47 +02:00
uml uml: switch to Kernel 5.15 2022-12-12 09:06:17 +01:00
x86 kernel: bump 5.10 to 5.10.156 2022-11-27 13:18:29 +01:00
zynq kernel: remove target specific CONFIG_IKCONFIG lines 2022-10-14 13:15:47 +02:00
Makefile build: fix issues with targets installed via feeds 2022-09-27 13:41:12 +02:00