[ -e /etc/config/ubootenv ] && exit 0

touch /etc/config/ubootenv

. /lib/uboot-envtools.sh
. /lib/functions.sh

board=$(board_name)

case "$board" in
dynalink,dl-wrx36|\
netgear,rax120v2|\
netgear,wax218|\
netgear,wax620)
	idx="$(find_mtd_index 0:appsblenv)"
	[ -n "$idx" ] && \
		ubootenv_add_uci_config "/dev/mtd$idx" "0x0" "0x40000" "0x20000" "2"
	;;
compex,wpq873|\
edgecore,eap102|\
zyxel,nbg7815)
	idx="$(find_mtd_index 0:appsblenv)"
	[ -n "$idx" ] && \
		ubootenv_add_uci_config "/dev/mtd$idx" "0x0" "0x10000" "0x10000" "1"
	;;
edimax,cax1800)
	idx="$(find_mtd_index 0:appsblenv)"
	[ -n "$idx" ] && \
		ubootenv_add_uci_config "/dev/mtd$idx" "0x0" "0x10000" "0x20000"
	;;
redmi,ax6|\
xiaomi,ax3600|\
xiaomi,ax9000)
	idx="$(find_mtd_index 0:appsblenv)"
	[ -n "$idx" ] && \
		ubootenv_add_uci_config "/dev/mtd$idx" "0x0" "0x10000" "0x20000"
	idx2="$(find_mtd_index bdata)"
	[ -n "$idx2" ] && \
		ubootenv_add_uci_sys_config "/dev/mtd$idx2" "0x0" "0x10000" "0x20000"
	;;
prpl,haze)
	mmcpart="$(find_mmc_part 0:APPSBLENV)"
	[ -n "$mmcpart" ] && \
		ubootenv_add_uci_config "$mmcpart" "0x0" "0x40000" "0x400" "0x100"
	;;
qnap,301w)
	idx="$(find_mtd_index 0:appsblenv)"
	[ -n "$idx" ] && \
		ubootenv_add_uci_config "/dev/mtd$idx" "0x0" "0x20000" "0x20000" "1"
	;;
esac

config_load ubootenv
config_foreach ubootenv_add_app_config

exit 0