#!/bin/sh

. /lib/functions.sh
. /lib/functions/system.sh

preinit_mount_factory_data() {
	local part_name="$1"
	local mtd_path
	local ubi_num

		mtd_path=$(find_mtd_chardev "$part_name")
		ubi_num=$(grep $part_name /proc/mtd | cut -c 1-5 | grep -o '[0-9]*')
		ubiattach --dev-path="$mtd_path" --devn=$ubi_num
		mkdir /tmp/$part_name
		mount -o ro,noatime -t ubifs ubi$ubi_num:ubi_$part_name /tmp/$part_name
}

preinit_mount_factory_partitions() {

	case $(board_name) in
	tplink,deco-x80-5g)
		preinit_mount_factory_data "factory_data"
		preinit_mount_factory_data "runtime_data"
		;;
	tplink,eap620hd-v1|\
	tplink,eap660hd-v1)
		preinit_mount_factory_data "factory_data"
		;;
	esac
}

boot_hook_add preinit_main preinit_mount_factory_partitions
