forked from dlink-dir_819/openwrt
		
	The Xiaomi MiWiFi 3A wireless router has a similar system architecture as the Xiaomi Mi 4A router, which is already officially supported by OpenWrt. Product website: https://www.mi.com/miwifi3a Device specification -------------------- SoC: MT7628AN MIPS_24KEc @ 580 MHz 2.4G-bgn 2x2 WiFi: MT7612EN 5G-an, ac 80 MHz 2T2R Flash: 16 MB DRAM: 64 MB Switch: MT7628AN (integrated in SoC) Ethernet: 1 x 10 /100 Mbps USB: None Antennas: 2 x 2,4 GHz and 2 x 5 GHz (all are external and non-detachable) LEDs: blue/red/amber Buttons: Reset Serial: 115200,8n1 MAC addresses as verified by OEM firmware: ------------------------------------------ use address source LAN *:DD factory 0x28 WAN *:DD factory 0x28 2g *:DE factory 0x4 5g *:DF factory 0x8004 OEM firmware uses VLAN's to create the network interface for WAN and LAN. Bootloader info: ---------------- The stock bootloader uses a "Dual ROM Partition System". OS1 is a deep copy of OS2. The bootloader starts OS2 by default. To force start OS1 it is needed to set "flag_try_sys2_failed=1". How to install: --------------- 1- Use OpenWRTInvasion to gain Telnet, SSH and FTP access: https://github.com/acecilia/OpenWRTInvasion [IP: 192.168.31.1 | Username: root | Password: root | FTP-Port: 21] 2- Connect to router using telnet or ssh. 3- Backup all partitions. Use command "dd if=/dev/mtd0 of=/tmp/mtd0". Copy /tmp/mtd0 to computer using ftp. 4- Copy openwrt-ramips-mt76x8-xiaomi_miwifi-3a-squashfs-sysupgrade.bin to /tmp in router using ftp. 5- Enable UART access and change start image to OS1. nvram set uart_en=1 nvram set flag_last_success=1 nvram set boot_wait=on nvram set flag_try_sys2_failed=1 nvram commit 6- Erase OS1 & OS2 and install OpenWrt mtd erase OS1 mtd erase OS2 mtd -r write /tmp/openwrt-ramips-mt76x8-xiaomi_miwifi-3a-squashfs-sysupgrade.bin OS1 Credits: -------- This PR is based on the work of Zehao Zhang (Github: @ZZH-Finalize) that he had published in the PR: #15698 Signed-off-by: Olgun Demir <olgun.demir@mail.com.tr> Link: https://github.com/openwrt/openwrt/pull/18427 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
		
			
				
	
	
		
			169 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			169 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #
 | |
| # Copyright (C) 2011-2012 OpenWrt.org
 | |
| #
 | |
| 
 | |
| [ -e /etc/config/ubootenv ] && exit 0
 | |
| 
 | |
| touch /etc/config/ubootenv
 | |
| 
 | |
| . /lib/uboot-envtools.sh
 | |
| . /lib/functions.sh
 | |
| 
 | |
| board=$(board_name)
 | |
| 
 | |
| case "$board" in
 | |
| alfa-network,ac1200rm|\
 | |
| alfa-network,awusfree1|\
 | |
| alfa-network,quad-e4g|\
 | |
| alfa-network,r36m-e4g|\
 | |
| alfa-network,tube-e4g|\
 | |
| engenius,epg600|\
 | |
| engenius,esr600h|\
 | |
| hongdian,h8922-v30|\
 | |
| linksys,re7000|\
 | |
| meig,slt866|\
 | |
| sitecom,wlr-4100-v1-002|\
 | |
| zyxel,keenetic-lite-iii-a)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x1000"
 | |
| 	;;
 | |
| alfa-network,ax1800rm|\
 | |
| allnet,all0256n-4m|\
 | |
| allnet,all0256n-8m|\
 | |
| allnet,all5002|\
 | |
| yuncore,ax820)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x10000" "0x10000"
 | |
| 	;;
 | |
| arcadyan,we420223-99|\
 | |
| dlink,dir-806a-b1)
 | |
| 	ubootenv_add_uci_config "/dev/mtd2" "0x0" "0x1000" "0x1000"
 | |
| 	;;
 | |
| ampedwireless,ally-00x19k|\
 | |
| ampedwireless,ally-r1900k)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x20000" "4"
 | |
| 	;;
 | |
| beeline,smartbox-giga|\
 | |
| beeline,smartbox-turbo|\
 | |
| beeline,smartbox-turbo-plus|\
 | |
| etisalat,s3|\
 | |
| rostelecom,rt-fe-1a|\
 | |
| rostelecom,rt-sf-1)
 | |
| 	ubootenv_add_uci_config "/dev/mtd0" "0x80000" "0x1000" "0x20000"
 | |
| 	;;
 | |
| beeline,smartbox-pro|\
 | |
| tplink,ec330-g5u-v1|\
 | |
| wifire,s1500-nbn)
 | |
| 	idx="$(find_mtd_index u-boot-env)"
 | |
| 	[ -n "$idx" ] && \
 | |
| 		ubootenv_add_uci_config "/dev/mtd$idx" "0x0" "0x1000" "0x20000"
 | |
| 	;;
 | |
| buffalo,wsr-1166dhp|\
 | |
| buffalo,wsr-600dhp|\
 | |
| kroks,kndrt31r16|\
 | |
| kroks,kndrt31r19|\
 | |
| mediatek,linkit-smart-7688|\
 | |
| samknows,whitebox-v8|\
 | |
| xiaomi,mi-router-4c|\
 | |
| xiaomi,miwifi-3a|\
 | |
| xiaomi,miwifi-nano|\
 | |
| zbtlink,zbt-wg2626|\
 | |
| zte,mf283plus)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x10000"
 | |
| 	;;
 | |
| asus,rt-ax53u|\
 | |
| asus,rt-ax54|\
 | |
| asus,4g-ax56|\
 | |
| belkin,rt1800|\
 | |
| elecom,wrc-x1800gs|\
 | |
| h3c,tx1800-plus|\
 | |
| h3c,tx1801-plus|\
 | |
| h3c,tx1806|\
 | |
| iptime,ax2004m|\
 | |
| jcg,q20|\
 | |
| linksys,e7350|\
 | |
| netgear,eax12|\
 | |
| netgear,wax202|\
 | |
| netis,n6|\
 | |
| zyxel,wsm20)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000"
 | |
| 	;;
 | |
| haier,har-20s2u1|\
 | |
| sim,simax1800t)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000"
 | |
| 	ubootenv_add_uci_sys_config "/dev/mtd1" "0x40000" "0x40000" "0x20000"
 | |
| 	;;
 | |
| hootoo,ht-tm05|\
 | |
| ravpower,rp-wd03)
 | |
| 	idx="$(find_mtd_index u-boot-env)"
 | |
| 	[ -n "$idx" ] && \
 | |
| 		ubootenv_add_uci_config "/dev/mtd$idx" "0x4000" "0x1000" "0x1000"
 | |
| 	;;
 | |
| beeline,smartbox-flash|\
 | |
| iptime,t5004|\
 | |
| linksys,ea6350-v4|\
 | |
| linksys,ea7300-v1|\
 | |
| linksys,ea7300-v2|\
 | |
| linksys,ea7500-v2|\
 | |
| linksys,ea8100-v1|\
 | |
| linksys,ea8100-v2|\
 | |
| mts,wg430223|\
 | |
| ubnt,edgerouter-x|\
 | |
| ubnt,edgerouter-x-sfp)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x20000"
 | |
| 	;;
 | |
| snr,snr-cpe-me1|\
 | |
| snr,snr-cpe-me2-sfp|\
 | |
| snr,cpe-w4n-mt)
 | |
| 	idx="$(find_mtd_index uboot-env)"
 | |
| 	[ -n "$idx" ] && \
 | |
| 		ubootenv_add_uci_config "/dev/mtd$idx" "0x0" "0x1000" "0x1000"
 | |
| 	;;
 | |
| xiaomi,miwifi-mini)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x10000"
 | |
| 	ubootenv_add_uci_sys_config "/dev/mtd9" "0x0" "0x4000" "0x10000"
 | |
| 	;;
 | |
| xiaomi,mi-router-3g-v2|\
 | |
| xiaomi,mi-router-4a-gigabit|\
 | |
| xiaomi,miwifi-3c)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x10000"
 | |
| 	ubootenv_add_uci_sys_config "/dev/mtd2" "0x0" "0x4000" "0x10000"
 | |
| 	;;
 | |
| xiaomi,mi-router-3g|\
 | |
| xiaomi,mi-router-3-pro|\
 | |
| xiaomi,mi-router-4|\
 | |
| xiaomi,mi-router-ac2100|\
 | |
| xiaomi,redmi-router-ac2100)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x20000"
 | |
| 	ubootenv_add_uci_sys_config "/dev/mtd2" "0x0" "0x4000" "0x20000"
 | |
| 	;;
 | |
| zyxel,lte3301-plus)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x80000"
 | |
| 	;;
 | |
| zyxel,lte5398-m904|\
 | |
| zyxel,lte7490-m904|\
 | |
| zyxel,nr7101)
 | |
| 	idx="$(find_mtd_index Config)"
 | |
| 	[ -n "$idx" ] && \
 | |
| 		ubootenv_add_uci_config "/dev/mtd$idx" "0x0" "0x1000" "0x80000"
 | |
| 	;;
 | |
| bolt,arion|\
 | |
| xiaomi,mi-router-cr6606|\
 | |
| xiaomi,mi-router-cr6608|\
 | |
| xiaomi,mi-router-cr6609)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x10000" "0x20000"
 | |
| 	;;
 | |
| dna,valokuitu-plus-ex400|\
 | |
| genexis,pulse-ex400)
 | |
| 	ubootenv_add_uci_config "/dev/ubi0_0" "0x0" "0x1f000" "0x1f000" "1"
 | |
| 	ubootenv_add_uci_config "/dev/ubi0_1" "0x0" "0x1f000" "0x1f000" "1"
 | |
| 	;;
 | |
| netgear,wax214v2)
 | |
| 	ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000"
 | |
| 	ubootenv_add_uci_sys_config "/dev/mtd1" "0x20000" "0x8000" "0x20000"
 | |
| 	;;
 | |
| esac
 | |
| 
 | |
| config_load ubootenv
 | |
| config_foreach ubootenv_add_app_config
 | |
| 
 | |
| exit 0
 |