-. /lib/functions/k2t.sh
-
-# xor multiple hex values of the same length
-xor() {
- local val
- local ret="0x$1"
- local retlen=${#1}
-
- shift
- while [ -n "$1" ]; do
- val="0x$1"
- ret=$((ret ^ val))
- shift
- done
-
- printf "%0${retlen}x" "$ret"
-}
-
-ath10kcal_die() {
- echo "ath10cal: " "$*"
- exit 1
-}
-
-ath10kcal_from_file() {
- local source=$1
- local offset=$(($2))
- local count=$(($3))
-
- dd if=$source of=/lib/firmware/$FIRMWARE iflag=skip_bytes bs=$count skip=$offset count=1 2>/dev/null || \
- ath10kcal_die "failed to extract calibration data from $source"
-}
-
-ath10kcal_extract() {
- local part=$1
- local offset=$(($2))
- local count=$(($3))
- local mtd
-
- mtd=$(find_mtd_chardev $part)
- [ -n "$mtd" ] || \
- ath10kcal_die "no mtd device found for partition $part"