treewide: move calibration data extraction function to library
[openwrt/openwrt.git] / target / linux / lantiq / base-files / etc / hotplug.d / firmware / 11-ath10k-caldata
index 6d7682a7f30247167ef79f4bd07dcb97ee2bec19..5b03fb0e01f21f7dcc764ad88b34707f63522ce7 100644 (file)
@@ -3,29 +3,7 @@
 
 [ -e /lib/firmware/$FIRMWARE ] && exit 0
 
 
 [ -e /lib/firmware/$FIRMWARE ] && exit 0
 
-. /lib/functions.sh
-. /lib/functions/system.sh
-. /lib/upgrade/nand.sh
-
-ath10k_caldata_die() {
-       echo "ath10k caldata: " "$*"
-       exit 1
-}
-
-ath10k_caldata_extract_ubi() {
-       local part=$1
-       local offset=$2
-       local count=$3
-       local ubidev=$(nand_find_ubi $CI_UBIPART)
-       local ubi
-
-       ubi=$(nand_find_volume $ubidev $part)
-       [ -n "$ubi" ] || \
-               ath10k_caldata_die "no UBI volume found for $part"
-
-       dd if=/dev/$ubi of=/lib/firmware/$FIRMWARE bs=1 skip=$offset count=$count 2>/dev/null || \
-               ath10k_caldata_die "failed to extract from $ubi"
-}
+. /lib/functions/caldata.sh
 
 ath10k_caldata_set_macaddr() {
        local macaddr=$1
 
 ath10k_caldata_set_macaddr() {
        local macaddr=$1
@@ -39,11 +17,11 @@ case "$FIRMWARE" in
        board=$(board_name)
        case $board in
                bt,homehub-v5a)
        board=$(board_name)
        case $board in
                bt,homehub-v5a)
-                       ath10k_caldata_extract_ubi "caldata" 20480 2116
+                       caldata_extract_ubi "caldata" 0x5000 0x844
                        ath10k_caldata_set_macaddr $(macaddr_add $(mtd_get_mac_binary_ubi caldata 0x110c) +3)
                        ;;
                *)
                        ath10k_caldata_set_macaddr $(macaddr_add $(mtd_get_mac_binary_ubi caldata 0x110c) +3)
                        ;;
                *)
-                       ath10k_caldata_die "board $board is not supported yet"
+                       caldata_die "board $board is not supported yet"
                        ;;
        esac
        ;;
                        ;;
        esac
        ;;