[ -e /etc/config/ubootenv ] && exit 0 touch /etc/config/ubootenv . /lib/uboot-envtools.sh . /lib/functions.sh board=$(board_name) ubootenv_add_mtd() { local idx="$(find_mtd_index "${1}")" [ -n "$idx" ] && \ ubootenv_add_uci_config "/dev/mtd$idx" "${2}" "${3}" "${4}" } ubootenv_add_sys_mtd() { local idx="$(find_mtd_index "${1}")" [ -n "$idx" ] && \ ubootenv_add_uci_sys_config "/dev/mtd$idx" "${2}" "${3}" "${4}" } ubootenv_add_mmc() { local mmcpart="$(find_mmc_part "${1}")" [ -n "$mmcpart" ] && \ ubootenv_add_uci_config "$mmcpart" "${2}" "${3}" "${4}" "${5}" } case "$board" in aliyun,ap8220|\ compex,wpq873|\ edgecore,eap102|\ zyxel,nbg7815) ubootenv_add_mtd "0:appsblenv" "0x0" "0x10000" "0x10000" ;; dynalink,dl-wrx36|\ netgear,rax120v2|\ netgear,sxr80|\ netgear,sxs80|\ netgear,wax218|\ netgear,wax620|\ netgear,wax630|\ tplink,eap620hd-v1|\ tplink,eap660hd-v1) ubootenv_add_mtd "0:appsblenv" "0x0" "0x40000" "0x20000" ;; edimax,cax1800) ubootenv_add_mtd "0:appsblenv" "0x0" "0x10000" "0x20000" ;; linksys,homewrk) ubootenv_add_mtd "0:appsblenv" "0x0" "0x40000" "0x40000" ;; linksys,mx4200v1|\ linksys,mx4200v2|\ linksys,mx5300|\ linksys,mx8500) ubootenv_add_mtd "u_env" "0x0" "0x40000" "0x20000" ;; linksys,mx4300) ubootenv_add_mtd "u_env" "0x0" "0x40000" "0x40000" ;; redmi,ax6|\ xiaomi,ax3600|\ xiaomi,ax9000) ubootenv_add_mtd "0:appsblenv" "0x0" "0x10000" "0x20000" ubootenv_add_sys_mtd "bdata" "0x0" "0x10000" "0x20000" ;; prpl,haze) ubootenv_add_mmc "0:APPSBLENV" "0x0" "0x40000" "0x400" "0x100" ;; asus,rt-ax89x|\ qnap,301w) ubootenv_add_mtd "0:appsblenv" "0x0" "0x20000" "0x20000" ;; spectrum,sax1v1k) ubootenv_add_mmc "0:APPSBLENV" "0x0" "0x40000" "0x40000" "1" ;; esac config_load ubootenv config_foreach ubootenv_add_app_config exit 0