openwrt/target/linux/qualcommax
Zhenyu Qi fa3b9f5149 qualcommax: ipq60xx: enable dual-boot for 360v6
Add dual-partition upgrade support for Qihoo 360v6 using the generic
bootconfig.sh library. This enables safe system upgrades with automatic
failover capability.

The device uses Qualcomm's bootconfig structure to control A/B partition
switching. The bootloader dynamically maps physical NAND partitions to
logical MTD devices based on the bootconfig, ensuring firmware always
writes to the inactive partition.

Implementation details:
- Use bootconfig.sh library (copied from ipq50xx) for bootconfig operations
- Operate on 'rootfs' partition by name instead of hardcoded offset
- Add magic header validation for safety
- Remove OEM UBI volumes (wifi_fw and ubi_rootfs) before sysupgrade
- Toggle bootconfig before removing OEM volumes

Hardware details:
- SoC: Qualcomm IPQ6000
- Flash: NAND with dual rootfs partitions (mtd16/mtd17)
- Bootconfig: controls slot selection via partition name lookup

Installation:
Standard sysupgrade process. After upgrade, the system will boot
from the new partition while preserving the old system as backup.

The OEM volume cleanup is necessary because these volumes are created
by the stock firmware and are not automatically cleaned by the standard
nand_upgrade_prepare_ubi() function, which only removes volumes named
'kernel', 'rootfs', and 'rootfs_data'. Without this cleanup, the remaining
OEM volumes consume available space, causing the creation of rootfs_data
to fail during sysupgrade.

Tested on Qihoo 360v6 running stock firmware and OpenWrt.

Signed-off-by: Zhenyu Qi <qzydustin@hotmail.com>
Link: https://github.com/openwrt/openwrt/pull/21154
Signed-off-by: Robert Marko <robimarko@gmail.com>
2025-12-28 12:45:40 +01:00
..
files Revert "qualcommax: ipq50xx: remove ipq5018 and qcn6122 wifi m3 fw" 2025-12-27 12:16:15 +01:00
image qualcommax: ipq50xx: add support for Linksys MX6200 2025-12-24 10:42:39 +01:00
ipq50xx qualcommax: ipq50xx: add support for Linksys MX6200 2025-12-24 10:42:39 +01:00
ipq60xx qualcommax: ipq60xx: enable dual-boot for 360v6 2025-12-28 12:45:40 +01:00
ipq807x qualcommax: ipq807x: add support for Zyxel NWA210AX 2025-12-01 14:30:27 +01:00
patches-6.12 Revert "qualcommax: ipq50xx: remove ipq5018 and qcn6122 wifi m3 fw" 2025-12-27 12:16:15 +01:00
config-6.12 qualcommax: ipq807x: add support for Zyxel NWA210AX 2025-12-01 14:30:27 +01:00
Makefile qualcommax: default to 6.12 2025-05-20 11:40:43 +02:00