aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* uboot-mediatek: use intree dtc explicitlyTianling Shen2023-11-26
| | | | | | This replaces pylibfdt hack. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* u-boot: introduce dependencies check for swig and pyelftoolsTianling Shen2023-11-26
| | | | | | | They are required by modern u-boot builds, e.g. uboot-rockchip and uboot-sunxi. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* ipq40xx: enable UBI size checks for some Linksys NAND devicesTony Ambardar2023-11-26
| | | | | | | | Add correct NAND_SIZE in device definitions for EA6350v3, EA8300, MR8300, WHW01 and WHW03v2, to enable improved image size checks wrt UBI reserved blocks on NAND devices. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* image: improve UBI image sizing on NAND devicesTony Ambardar2023-11-26
| | | | | | | | | | | | | | | | | | | | | | | | Many NAND devices use a build recipe with "append-ubi | check-size" to ensure factory images don't exceed the target flash partition size. However, UBI reserves space for bad block handling and other operational overhead, and thus 'check-size' can overestimate the space available by several MB. In practice, this means a failed check is definitely a failure, while a passing check is only probably a pass. Improve the situation by teaching 'Build/append-ubi' to check image sizes while accounting for UBI reserved blocks. Add new device variable NAND_SIZE and use with existing IMAGE_SIZE to derate the available space. Each UBI device reserves 20 PEBs per 1024 PEBs of the entire NAND device for bad blocks, plus an additional 4 PEBs overhead. Many devices can transparently enable this check by setting NAND_SIZE based on their flash storage, and may then remove any unneeded 'check-size'. Link: http://www.linux-mtd.infradead.org/doc/ubi.html#L_overhead Suggested-by: Shiji Yang <yangshiji66@qq.com> Suggested-by: Robert Marko <robimarko@gmail.com> Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* image: fix Linksys image alignment and simplify footer creationTony Ambardar2023-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Current factory image sizes for Linksys devices are 256-byte aligned. This is not an issue writing factory images from the OpenWrt or Linksys GUIs, but can lead to failures using a TFTP client from the Linksys bootloader: NAND write: device 1 offset 0x2800000, size 0xc00100 Attempt to write to non page aligned data NAND write to offset 2800000 failed -22 0 bytes written: ERROR Simplify Linksys footer creation by migrating to a makefile build recipe, and pre-pad the footer (with 0xFF) to ensure the final image is $(PAGESIZE) aligned. Finally, remove the old linksys-image.sh script no longer needed. Linksys footer details are given below for future reference. The 256-byte footer is appended to factory images and tested by both the Linksys Upgrader (observed in EA6350v3) and OpenWrt sysupgrade. Footer format: .LINKSYS. Checked by Linksys upgrader before continuing. (9 bytes) <VERSION> Upgrade version number, unchecked so arbitrary. (8 bytes) <TYPE> Model of device, space padded (0x20). (15 bytes) <CRC> CRC checksum of factory image to flash. (8 bytes) <padding> Padding ('0' + 0x20 * 7) (8 bytes) <signature> Signature of signer, unchecked so arbitrary. (16 bytes) <padding> Padding with nulls (0x00) (192 bytes) Link: https://github.com/openwrt/openwrt/pull/11405#issuecomment-1358510123 Link: https://github.com/openwrt/openwrt/pull/11405#issuecomment-1587517739 Reported-by: Stijn Segers <foss@volatilesystems.org> Reported-by: Wyatt Martin <wawowl@gmail.com> Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* image: use helper function for size unitsTony Ambardar2023-11-26
| | | | | | | | Add the make function 'exp_units' for helping evaluate k/m/g size units in expressions, and use this to consistently replace many ad hoc substitutions like '$(subst k,* 1024,$(subst m, * 1024k,$(IMAGE_SIZE)))' in makefiles. Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* ipq40xx: fix typo in Linksys WHW01 image definitionTony Ambardar2023-11-26
| | | | | | | | Use lower-case "k" in IMAGE_SIZE for Linksys WHW01, permitting proper unit conversions in build recipes (e.g. 75776k -> 75776*1024). Fixes: 2a9f3b7717 ("ipq40xx: fix up Linksys WHW01 board name, device definition") Signed-off-by: Tony Ambardar <itugrok@yahoo.com>
* ath79: add support for D-link DAP-1720 A1Rani Hod2023-11-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | D-Link DAP-1720 rev A1 is a mains-powered AC1750 Wi-Fi range extender, manufactured by Alpha Networks [8WAPAC28.1A1G]. (in square brackets: PCB silkscreen markings) Specifications: * CPU (Qualcomm Atheros QCA9563-AL3A [U5]): 775 MHz single core MIPS 74Kc; * RAM (Winbond W9751G6KB-25J [U3]): 64 MiB DDR2; * ROM (Winbond W25Q128FV [U16]): 16 MiB SPI NOR flash; * Ethernet (AR8033-AL1A PHY [U1], no switch): 1 GbE RJ45 port (no PHY LEDs); * Wi-Fi * 2.4 GHz (Qualcomm Atheros QCA9563-AL3A [U5]): 3x3 802.11n; * 5 GHz (Qualcomm Atheros QCA9880-BR4A [U9]): 3x3 802.11ac Wave 1; * 3 foldable dual-band antennas (U.fl) [P1],[P2],[P3]; * GPIO LEDs: * RSSI low (red/green) [D2]; * RSSI medium (green) [D3]; * RSSI high (green) [D4]; * status (red/green) [D5]; * GPIO buttons: * WPS [SW1], co-located with status LED; * reset [SW4], accessible via hole in the side; * Serial/UART: Tx-Gnd-3v3-Rx [JP1], Tx is the square pin, 1.25mm pitch; 125000-8-n-1 in U-boot, 115200-8-n-1 in kernel; * Misc: * 12V VCC [JP2], fed from internal 12V/1A AC to DC converter; * on/off slide switch [SW2] (disconnects VCC mechanically); * unpopulated footprints for a Wi-Fi LED [D1]; * unpopulated footprints for a 4-pin 3-position slide switch (SW3); MAC addresses: * Label = LAN; * 2.4 GHz WiFi = LAN; * 5 GHz WiFi = LAN+2; Installation: * `factory.bin` can be used to install OpenWrt from OEM firmware via the standard upgrade webpage at http://192.168.0.50/UpdateFirmware.html * `recovery.bin` can be used to install OpenWrt (or revert to OEM firmware) from D-Link Web Recovery. To enter web recovery, keep reset button pressed and then power on the device. Reset button can be released when the red status LED is bright; it will then blink slowly. Set static IP to 192.168.0.10, navigate to http://192.168.0.50 and upload 'recovery.bin'. Note that in web recovery mode the device ignores ping and DHCP requests. Note: 802.11s is not supported by the default `ath10k` driver and firmware, but is supported by the non-CT driver and firmware variants. The `-smallbuffers` driver variant is recommended due to RAM size. Co-developed-by: Anthony Sepa <protectivedad@gmail.com> Signed-off-by: Rani Hod <rani.hod@gmail.com>
* ath79: ar: convert to mac-baseRosen Penev2023-11-25
| | | | | | Replacement for deprecated mac-address-increment Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ath79: ar: convert to nvmem-layoutRosen Penev2023-11-25
| | | | | | Will allow removing deprecated mac-address-increment. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ath79: tp9343: convert to nvmem-layoutRosen Penev2023-11-25
| | | | | | Allows getting rid of deprecated mac-address-increment. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ath79: qcn: convert to nvmem-layoutRosen Penev2023-11-25
| | | | | | Allows getting rid of deprecated mac-address-increment. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ath79: qca: remove mac-address-incrementRosen Penev2023-11-25
| | | | | | nvmem-layout allows removal Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ath79: qca: convert to nvmem-layoutRosen Penev2023-11-25
| | | | | | Allows replacing mac-address-increment with mac-base. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ath79: mikrotik: fix dts warningsRosen Penev2023-11-25
| | | | | | property has invalid length Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ramips: mt7621: nix mac-address-incrementRosen Penev2023-11-26
| | | | | | nvmem-layout allows removal Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ramips: mt7621: convert to nvmem-layoutRosen Penev2023-11-26
| | | | | | Allows replacing mac-address-increment with mac-base. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ramips: mt7621: add interrupt-controllerRosen Penev2023-11-26
| | | | | | | | Fixes dtc warning: '#interrupt-cells' found, but node is not an interrupt provider Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ramips: mt7620a: use mac-baseRosen Penev2023-11-26
| | | | | | mac-address-increment is deprecated. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ramips: mt7620a: convert to nvmem-layoutRosen Penev2023-11-26
| | | | | | Allows using mac-base to replace mac-address-increment. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ramips: mt7620n: convert to nvmem-layoutRosen Penev2023-11-26
| | | | | | nvmem-cells is deprecated. nvmem-layout allows using mac-base. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ramips: mt7628: use mac-baseRosen Penev2023-11-25
| | | | | | mac-address-increment is deprecated. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ramips: mt7628: use nvmem-layoutRosen Penev2023-11-25
| | | | | | Will allow using mac-base. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* mediatek: use mac-baseRosen Penev2023-11-25
| | | | | | mac-address-increment is deprecated. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* mediatek: convert to nvmem-layoutRosen Penev2023-11-25
| | | | | | Will allow removing mac-address-increment. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ramips: rtxxxx: remove mac-address-incrementRosen Penev2023-11-25
| | | | | | Deprecated and replaced upstream with mac-base. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ramips: rtxxxx: convert to nvmem-layoutRosen Penev2023-11-25
| | | | | | Allows replacing mac-adress-increment. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* mediatek: filogic: reorder alphabeticallyChukun Pan2023-11-25
| | | | | | Reorder scripts and image recipes to keep alphabetical order. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
* uboot-envtools: filogic: reorder alphabeticallyChukun Pan2023-11-25
| | | | | | Reorder scripts to keep alphabetical order. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
* mediatek: filogic: remove kmod-usb2 for GL-MT6000Chukun Pan2023-11-25
| | | | | | | The usb driver requires kmod-usb3, not kmod-usb2. Remove the useless kmod-usb2 from default package. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
* mediatek: Cetron CT3003: fixes typo for spi propertiesChukun Pan2023-11-25
| | | | | | | Same as commit 3674689, correct 'buswidth' to 'bus-width'. Also move the nmbm properties outside the partition definition. Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
* ipq40xx: remove mac-address-incrementRosen Penev2023-11-25
| | | | | | nvmem-layout allows removal Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ipq40xx: convert to nvmem-layoutRosen Penev2023-11-25
| | | | | | Allows replacing mac-address-increment with mac-base. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ipq40xx: fix dtc warnimgRosen Penev2023-11-25
| | | | | | I2C bus unit address format error, expected "62" Signed-off-by: Rosen Penev <rosenp@gmail.com>
* qualcommax: convert to nvmem-layoutRosen Penev2023-11-25
| | | | | | nvmem-cells is deprecated Signed-off-by: Rosen Penev <rosenp@gmail.com>
* apm821xx: convert to nvmem-layoutRosen Penev2023-11-25
| | | | | | nvmem-cells is deprecated. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* mediatek: filogic: Fix GPIOs for Zbtlink ZBT-Z8102AXHauke Mehrtens2023-11-25
| | | | | | | The PGIO configuration should be added for the ZBT-Z8102AX and not the ZBT-Z8103AX Fixes: c8c2f522625c ("mediatek: add support for Zbtlink ZBT-Z8102AX") Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* ramips: mt76x8 add support for RTC class/driversXiaobo Liu2023-11-25
| | | | | | This commit adds support for RTC class/drivers to the mt76x8 target. Signed-off-by: Xiaobo Liu <cppcoffee@gmail.com>
* f2fs-tools: avoid dead symlinks in rootRosen Penev2023-11-25
| | | | | | | When building on the host, this avoids creating dead symlinks. Matches what is done elsewhere. Signed-off-by: Rosen Penev <rosenp@gmail.com>
* ramips: add support for TP-Link EX220 v1Darlan Pedro de Campos2023-11-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This device is very similar, if not identical, to the TP-Link AX23 v1 but is targeted at service providers and features a completely different flash layout. Hardware -------- CPU: MediaTek MT7621 DAT RAM: 128MB DDR3 (integrated) FLASH: 16MB SPI-NOR WiFi: MediaTek MT7905 + MT7975 (2.4 / 5 DBDC) 802.11ax SERIAL: 115200 8N1 LEDs - (3V3 - GND - RX - TX) - ETH ports Installation ------------ Flashing is only possible via a serial connection using the sysupgrade image; the factory image must be signed. You can flash the sysupgrade image directly through the U-Boot console, or preferably, by booting the initramfs image and flashing with the sysupgrade command. Follow these steps for sysupgrade flashing: 1. Establish a UART serial connection. 2. Set up a TFTP server at 192.168.0.2 and copy the initramfs image there. 3. Power on the device and press any key to interrupt normal boot. 4. Load the initramfs image using tftpboot. 5. Boot with bootm. 6. If you haven't done so already, back up all stock mtd partitions. 7. Copy the sysupgrade image to the router. 8. Flash OpenWrt through either LuCI or the sysupgrade command. Remember not to attempt saving settings. Revert to stock firmware ------------------------ Flash stock firmware via OEM web-recovery mode. If you don't have access to the stock firmware image, you will need to restore the firmware partition backed up earlier. Web-Recovery ------------ The router supports an HTTP recovery mode: 1. Turn off the router. 2. Press the reset button and power on the device. 3. When all LEDs start flashing, release reset and quickly press it again. The interface is reachable at 192.168.0.1 and supports installation of the OEM factory image. Note that flashing OpenWrt this way is not possible, as mentioned above. Signed-off-by: Darlan Pedro de Campos <darlanpedro@gmail.com>
* mwlwifi: update to version 10.4.10-20231120Michael Trinidad2023-11-25
| | | | | | | | | | | | | | | | | | | | | | | | | Upstream PR 416 improvements: -AMPDU Optimization of priority calculation. (8864/8897) -8864/8897 fix wpa3 -Add cypher suite to driver capabilities (all chip) -Alignment of pcie_tx_ctrl* (all chip) -"feature" normalization for all chips (all chip) -Add modprobe parameters (all chip) -fix monitoring (all chip) -Code separation by chipset (8864/8897 <=> 8997) -dump_prob decommissioning (8864/8897/8997) -fix amsdu high ping latency (8864/8897/8997) -drop debug info in hostcmd_get_hw_spec() (8864/8897) -Add wcb_base in debug info (8864) -Rewrite AMSDU packets (8864/8897/8997) -debug rewrite output mwl_debugfs_sta_read (all chip) -Improved encryption interoperability (8864/8897/8997) -factorization encrypted packet test (8864/8897/8997) -Change 88W8864 firmware to 7.2.9.27 (8864/8897) -Fix the AMPDU session lifecycle (8864/8897/8997) -Remove the tx done packets mechanism (8864/8897) Signed-off-by: Michael Trinidad <trinidude4@hotmail.com>
* ramips: Add support for Cudy WR1300 v3Filip Milivojevic2023-11-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specifications: - SoC: MediaTek MT7621AT - RAM: 128 MB (DDR3) - Flash: 16 MB (SPI NOR) - WiFi: MediaTek MT7603E, MediaTek MT7613BE - Switch: 1 WAN, 4 LAN (Gigabit) - Buttons: Reset, WPS - LEDs: System, Wan, Lan 1-4, WiFi 2.4G, WiFi 5G, WPS - Power: DC 12V 1A tip positive Download and flash the manufacturer's built OpenWRT image available at http://www.cudytech.com/openwrt_software_download Install the new OpenWRT image via luci (System -> Backup/Flash firmware) Be sure to NOT keep settings. The force upgrade may need to be checked due to differences in router naming conventions. Cudy WR1300 v3 differs from v2 only in swapped WiFi chip PCIe slots. Common nodes are extracted to .dtsi and new v2 and v3 dts are created. Cudy WR1300 v2 dts now contains ieee80211-freq-limit and has eeprom_factory_8000 length fixed. The same manufacturer's built OpenWRT image is provided for both v2 and v3 devices as a step in installing, but for proper WiFi functionality, a separate build is required. Recovery: - Loads only signed manufacture firmware due to bootloader RSA verification - serve tftp-recovery image as /recovery.bin on 192.168.1.88/24 - connect to any lan ethernet port - power on the device while holding the reset button - wait at least 8 seconds before releasing reset button for image to download - See http://www.cudytech.com/newsinfo/547425.html Signed-off-by: Filip Milivojevic <zekica@gmail.com>
* uboot-envtools: add support for Zyxel EX5601-T0 ubootmodNicolò Veronese2023-11-25
| | | | | | | | The ubootmod bootlaoder for EX5601-T0 uses two partitions in ubi to store enviroment variables. so proper config is needed. Signed-off-by: Nicolò Veronese <nicveronese@gmail.com>
* mediatek: add Zyxel EX5601-T0 with uboot custom partitionValerio 'ftp21' Mancini2023-11-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The flash procedure is similar to the Xiaomi AX6000 router. Load openwrt-mediatek-filogic-zyxel_ex5601-t0-ubootmod-initramfs-recovery.itb from original Zyxel U-Boot: tftpboot openwrt-mediatek-filogic-zyxel_ex5601-t0-ubootmod-initramfs-recovery.itb bootm 0x46000000 Load mtd-rw insmod /lib/modules/$(uname -r)/mtd-rw.ko i_want_a_brick=1 Format ubi and create ubootenv partitions ubidetach -p /dev/mtd5; ubiformat /dev/mtd5 -y; ubiattach -p /dev/mtd5 ubimkvol /dev/ubi0 -n 0 -N ubootenv -s 128KiB ubimkvol /dev/ubi0 -n 1 -N ubootenv2 -s 128KiB Copy openwrt-mediatek-filogic-zyxel_ex5601-t0-ubootmod-initramfs-recovery.itb to /tmp and create recovery partition. If your recovery image is larger than 10MiB, size the recovery partition accordingly to make it fit. ubimkvol /dev/ubi0 -n 2 -N recovery -s 10MiB ubiupdatevol /dev/ubi0_2 openwrt-mediatek-filogic-zyxel_ex5601-t0-ubootmod-initramfs-recovery.itb Copy preloader and uboot to /tmp and write them in the mtd mtd write /tmp/openwrt-mediatek-filogic-zyxel_ex5601-t0-ubootmod-preloader.bin bl2 mtd write /tmp/openwrt-mediatek-filogic-zyxel_ex5601-t0-ubootmod-bl31-uboot.fip fip Now write the firmware: sysupgrade -n /tmp/openwrt-mediatek-filogic-zyxel_ex5601-t0-ubootmod-squashfs-sysupgrade.itb To create a correct BL2, I had to add a profile for 'spim:4k+256' as I could not find a way to value the variable 'NAND_TYPE'. Features and fixes from hitech95 tree has been squashed, I'm attaching his commit message: The Power LED was not working correctly and not reacting to the boot process and statuses. The board has space (footprint) for an unpopulated Zigbee chip, while we dont know the device model having this chip populated we have to assure that the common dts doesnt enable interfaces that share pins with such device. In this instance the PCIe and the uart1 and uart2 are disabled. Some of the control PCIE pins seems to be used for the Zigbee chip, UART1 seems to be used as a flash port while UART2 should be the main comunication interface of Zigbee chip. The Zigbee chip should be a EFR32MG21. But the pins used for UART seems to be not on standard PINS used by other adapters. So it cannot run firmwares shared on the web. But it should be possible to build a custom firmware with the corrtect pinmux. This commit also contains the following squashed commit from hitech95 - mediatek: fix sysupgrade for Zyxel EX7601-T0 ubootmod Changes and fixes added in common board: - added aliases for boot status leds. - added aliases for the mac-label-device. - added pin claims for core features (MDIO and UART 0) - added default LEDs configuration (01_leds) - added default network configuration (02_network) - added missing kmod-usb3 module for USB3 - fixed LED names - fixed reset pin for SLIC chip - removed unused pinmux configurations and devices - fix LAN (switch) port numbering - using nvmem cells for wifi eeprom, dropping deprecated "mediatek,mtd-eeprom" - proper factory partition and mac address handling - cleaned up spi_nand sections and partition Changes and fixxes added in stock layout: - added NMBM, if u-boot has it, the kernel must be informed. Co-authored-by: Nicolò Veronese <nicveronese@gmail.com> Co-developed-by: Nicolò Veronese <nicveronese@gmail.com> Signed-off-by: Nicolò Veronese <nicveronese@gmail.com> Signed-off-by: Valerio 'ftp21' Mancini <ftp21@ftp21.eu>
* uboot-mediatek: add initial Zyxel EX5601-T0 supportValerio 'ftp21' Mancini2023-11-25
| | | | | | | | | | | | | | | | | | | | | | | Flash procedure is described in next commit. TLDR: Copy preloader and uboot to /tmp and write them in the mtd. This will also require new UBI partition and volumes to boot openwrt. mtd write /tmp/openwrt-mediatek-filogic-zyxel_ex5601-t0-ubootmod-preloader.bin bl2 mtd write /tmp/openwrt-mediatek-filogic-zyxel_ex5601-t0-ubootmod-bl31-uboot.fip fip Changelist: - Added profile for 4k+256 SPI NAND_TYPE - Added basic Zyxel EX5601-T0 uboot profile Backported from hitech95 branch: - Button RESET pin fix - Button WPS pin fix Signed-off-by: Valerio 'ftp21' Mancini <ftp21@ftp21.eu> Signed-off-by: Nicolò Veronese <nicveronese@gmail.com>
* mediatek: remove DTS property added by mistakeDaniel Golle2023-11-25
| | | | | | | Remove bogus 'phy-handle = <&phy0>;', an undefined reference. Fixes: c8c2f52262 ("mediatek: add support for Zbtlink ZBT-Z8102AX") Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ramips: add support for Sercomm CPJ routersMikhail Zhilkin2023-11-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds support for following wireless routers: - Rostelecom RT-FL-1 (Serсomm RT-FL-1) - Rostelecom S1010 (Serсomm S1010.RT) The devices are almost identical and the only difference is one bit in the factory image PID (thanks to Maximilian Weinmann <x1@disroot.org> (@MaxS0niX) for the info and idea to make one PR for two devices at once). Devices specification --------------------- SoC: MediaTek MT7620A, MIPS RAM: 64 MB Flash: 16 MB SPI NOR Wireless 2.4: MT7620 (b/g/n, 2x2) Wireless 5: MT7612EN (a/n/ac, 2x2) Ethernet: 5xFE (WAN, LAN1-4) BootLoader: U-Boot Buttons: 2 (wps, reset) LEDs: 1 amber and 1 green status GPIO leds 5 green ethernet GPIO leds 1 green GPIO 2.4 GHz WLAN led 1 green PHY 5 GHz WLAN led 1 green unmanaged power led USB ports: No Power: 12 VDC, 1 A Connector: Barrel OEM easy installation --------------------- 1. Remove all dots from the factory image filename (except the dot before file extension) 2. Upload and update the firmware via the original web interface 3. Wait until green status led stops blinking (can take several minutes) 4. Login to OpenWrt initramsfs. It's recommended to make a backup of the mtd partitions at this point. 4. Perform sysupgrade using the following command (or use Luci): sysupgrade -n sysupgrade.bin 5. Wait until green status les stops blinking (can take several minutes) 6. Mission acomplished Return to Stock --------------- Option 1. Restore firmware Slot1 from a backup (firmware2.bin): cd /tmp mtd -e Firmware2 write firmware2.bin Firmware2 printf 1 | dd bs=1 seek=$((0x18007)) count=1 of=/dev/mtdblock2 reboot Option 2. Decrypt, ungzip and split stock firmware image into the parts, take Slot1 parts (kernel2.bin, rootfs2.bin) and write them: cd /tmp mtd -e Kernel2 write kernel2.bin Kernel2 mtd -e RootFS2 write rootfs2.bin RootFS2 printf 1 | dd bs=1 seek=$((0x18007)) count=1 of=/dev/mtdblock2 reboot More about stock firmware decryption: Link: https://github.com/Psychotropos/sercomm_fwutils/ Debricking ---------- Use sercomm-recovery tool. You can use "ALL" mtd partition backup as a recovery image. Link: https://github.com/danitool/sercomm-recovery MAC addresses ------------- +---------+-------------------+-----------+ | | MAC | Algorithm | +---------+-------------------+-----------+ | label | 48:3e:xx:xx:xx:1e | label | | LAN | 48:3e:xx:xx:xx:1e | label | | WAN | 48:3e:xx:xx:xx:28 | label+10 | | WLAN 2g | 48:3e:xx:xx:xx:20 | label+2 | | WLAN 5g | 48:3e:xx:xx:xx:24 | label+6 | +---------+-------------------+-----------+ Co-authored-by: Vadzim Vabishchevich <bestmc2009@gmail.com> Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
* ramips: mt7620: drop unnecessary trailing tabsMikhail Zhilkin2023-11-25
| | | | | | Let's tidy up a bit (drop unnecessary trailing tabs). Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
* ramips: sercomm.mk: make common recipe to set a bit in pidMikhail Zhilkin2023-11-25
| | | | | | | | This commit makes a common recipe to set bit in Sercomm factory pid since this is necessary for several devices (WiFire S1500.nbn, Rostelecom RT-FL-1) at different offsets. Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>
* scripts: sercomm-pid.py: use uppercase hwid in pidMikhail Zhilkin2023-11-25
| | | | | | | | | | | | | | | | | Sercomm uses uppercase for hexadecimal representation of the device hardware IDs in factory image PID. This commit brings the sercomm-pid.py script into compliance with the original Sercomm algorithm. Example ------- +--------+-------------+-----------+-------------+ | Device | PID (before | PID | PID (after | | HWID | the commit) | (Sercomm) | the commit) | +--------+-------------+-----------+-------------+ | CPJ | 43 50 4a | 43 50 4A | 43 50 4A | +--------+-------------+-----------+-------------+ Signed-off-by: Mikhail Zhilkin <csharper2005@gmail.com>