Skip to content

Commit 72eaeac

Browse files
qualcommax: ipq50xx: add support for Xiaomi Redmi AX3000 and AX5400
Add support for Xiaomi Redmi AX3000. Speficiations: * SoC: Qualcomm IPQ5018 (64-bit dual-core ARM Cortex-A53 @ 1.0Ghz) * Memory: Etrontech EM6HE16EWAKG 512 MiB DDR3L-933 * Serial Port: 1v8 TTL 115200n8 * Wi-Fi: IPQ5018 (2x2 2.4 Ghz 802.11b/g/n/ax - up to 574 Mbps) Redmi AX3000: QCN6122 (2x2 5 Ghz 802.11an/ac/ax - up to 2402 Mbps) Redmi AX5400: QCN9024 (4x4 5 Ghz 802.11an/ac/ax - up to 4804 Mbps) * Ethernet: IPQ5018 integrated virtual switch connected to an external QCA8337 switch (3 LAN Ports 10/100/1000) * Flash: Gigadevice GD5F1GQ5REYIG (128 MiB) * LEDs: 1x System Blue (GPIO 24 Active High) 1x System Yellow (GPIO 25 Active High) 1x WAN Link Blue (GPIO 26 Active High) 1x WAN Link Yellow (GPIO 27 Active High) * Buttons: 1x Reset (GPIO 38 Active Low) 1x WPS (GPIO 28 Active Low) Flash instructions: (use redmi-ax5400 image for the Redmi AX5400) Download XMIR Patcher: https://github.com/openwrt-xiaomi/xmir-patcher First flash a ubinized OpenWrt initramfs that will serve as the intermediate step, since OpenWrt uses unified rootfs in order to fully utilize NAND and provide enough space for packages, through either of the below two methods: Installation via XMIR Patcher: 1. Load the initramfs image: openwrt-qualcommax-ipq50xx-xiaomi_redmi-ax3000-initramfs-factory.ubi Installation via ubiformat method, through SSH: 1. If needed, enable SSH using XMIR Patcher. 2. Copy the file openwrt-qualcommax-ipq50xx-xiaomi_redmi-ax3000-initramfs-factory.ubi to the /tmp directory 3. Open an SSH shell to the router 4. Check which rootfs partition is your router booted in (0 = rootfs | 1 = rootfs_1): nvram get flag_boot_rootfs 5. Find the rootfs and rootfs_1 mtd indexes respectively: cat /proc/mtd Please confirm if mtd18 and mtd19 are the correct indexes from above! 6. Use the command ubiformat to flash the opposite mtd with UBI image: If nvram get flag_boot_rootfs returned 0: ubiformat /dev/mtd19 -y -f /tmp/openwrt-qualcommax-ipq50xx-xiaomi_redmi-ax3000-initramfs-factory.ubi && nvram set flag_boot_rootfs=1 && nvram set flag_last_success=1 && nvram commit otherwise: ubiformat /dev/mtd18 -y -f /tmp/openwrt-qualcommax-ipq50xx-xiaomi_redmi-ax3000-initramfs-factory.ubi && nvram set flag_boot_rootfs=0 && nvram set flag_last_success=0 && nvram commit 7. Reboot the device by: reboot Continue in order to pernamently flash OpenWrt: 1. Upload the sysupgrade image to /tmp/ using SCP: scp -O <path to image> root@192.168.1.1:/tmp/ 2. Open an SSH shell to 192.168.1.1 from a PC within the same subnet 3. Use sysupgrade to flash the sysupgrade image: sysupgrade -n -v /tmp/openwrt-qualcommax-ipq50xx-xiaomi_redmi-ax3000-squashfs-sysupgrade.bin Device will reboot with OpenWrt, and then sysupgrade can be used to upgrade the device when desired. Signed-off-by: George Moussalem <george.moussalem@outlook.com>
1 parent 4eed540 commit 72eaeac

File tree

9 files changed

+1235
-11
lines changed

9 files changed

+1235
-11
lines changed

package/boot/uboot-tools/uboot-envtools/files/qualcommax_ipq50xx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,9 @@ linksys,mx6200|\
2222
linksys,spnmx56)
2323
ubootenv_add_mtd "u_env" "0x0" "0x40000" "0x20000"
2424
;;
25-
xiaomi,ax6000)
25+
xiaomi,ax6000|\
26+
xiaomi,redmi-ax3000|\
27+
xiaomi,redmi-ax5400)
2628
ubootenv_add_mtd "0:appsblenv" "0x0" "0x10000" "0x20000"
2729
ubootenv_add_sys_mtd "bdata" "0x0" "0x10000" "0x20000"
2830
;;

package/firmware/ipq-wifi/Makefile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,8 @@ ALLWIFIBOARDS:= \
8484
xiaomi_ax3600 \
8585
xiaomi_ax6000 \
8686
xiaomi_ax9000 \
87+
xiaomi_redmi-ax3000 \
88+
xiaomi_redmi-ax5400 \
8789
yyets_le1 \
8890
yuncore_ax830 \
8991
yuncore_ax880 \
@@ -252,6 +254,8 @@ $(eval $(call generate-ipq-wifi-package,wallys_dr40x9,Wallys DR40X9))
252254
$(eval $(call generate-ipq-wifi-package,xiaomi_ax3600,Xiaomi AX3600))
253255
$(eval $(call generate-ipq-wifi-package,xiaomi_ax6000,Xiaomi AX6000))
254256
$(eval $(call generate-ipq-wifi-package,xiaomi_ax9000,Xiaomi AX9000))
257+
$(eval $(call generate-ipq-wifi-package,xiaomi_redmi-ax3000,Xiaomi Redmi AX3000))
258+
$(eval $(call generate-ipq-wifi-package,xiaomi_redmi-ax5400,Xiaomi Redmi AX5400))
255259
$(eval $(call generate-ipq-wifi-package,yyets_le1,YYeTs LE1))
256260
$(eval $(call generate-ipq-wifi-package,yuncore_ax830,Yuncore AX830))
257261
$(eval $(call generate-ipq-wifi-package,yuncore_ax880,Yuncore AX880))

0 commit comments

Comments
 (0)