#!/bin/sh

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

fix_k2t_board_data() {
	local cfg_addr_f56
	local board_data_file
	local hw_ver
	local board_data_dir="/lib/firmware/QCA9888/hw.2"
	
	hw_ver=$(head -c400 $(find_mtd_chardev config) | grep -o hw_ver.* | cut -d\" -f3)
	
	[ -n "$hw_ver" ] || hw_ver="A1"
	
	echo "K2T-HW:$hw_ver"
	cfg_addr_f56=`hexdump /dev/mtdblock6 -s 0x7510 -n 16 | awk '{print $6$7$8$9}'`
	
	case ${cfg_addr_f56} in
		"0000000000000000")	board_data_file="${board_data_dir}/boarddata_${hw_ver}_noPAline.bin"
			;;
		"446414002dc8906c")	board_data_file="${board_data_dir}/boarddata_${hw_ver}.bin"
			;;
		*)			board_data_file="boarddata_${hw_ver}.bin"
			;;
	esac
	
	echo "BoardData:$board_data_file"
	
	if [ -f "${board_data_dir}/${board_data_file}" ]; then
		rm -rf ${board_data_dir}/boarddata_0.bin ${board_data_dir}/boardData_2_0_QCA9888_5G_Y9582.bin
		ln -s ${board_data_dir}/${board_data_file} ${board_data_dir}/boarddata_0.bin
		ln -s ${board_data_dir}/${board_data_file} ${board_data_dir}/boardData_2_0_QCA9888_5G_Y9582.bin
	fi
}

board=$(board_name)

case "$board" in
k2t)
	fix_k2t_board_data
	;;
esac
