summaryrefslogtreecommitdiffstats
path: root/target/linux/ar71xx/base-files/lib/preinit
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2014-07-10 19:16:23 +0000
committerJohn Crispin <john@openwrt.org>2014-07-10 19:16:23 +0000
commitf8f66785748ea3f3ae049a836b14c5c24880b67c (patch)
treef01d04b5b34317c087f0a1b1c4e1af9020e52e25 /target/linux/ar71xx/base-files/lib/preinit
parent94802dca60ef6f723618feb6e3ee23afb6d8d6b3 (diff)
downloadmaster-31e0f0ae-f8f66785748ea3f3ae049a836b14c5c24880b67c.tar.gz
master-31e0f0ae-f8f66785748ea3f3ae049a836b14c5c24880b67c.tar.bz2
master-31e0f0ae-f8f66785748ea3f3ae049a836b14c5c24880b67c.zip
ar71xx: nbg6716: extract ath10k wifi board.bin
With help of this script the ath10k board.bin settings are loaded from flash and saved to the ath10k firmware directory. The driver reads it later in the boot process. Signed-off-by: André Valentin <avalentin@marcant.net> SVN-Revision: 41562
Diffstat (limited to 'target/linux/ar71xx/base-files/lib/preinit')
-rw-r--r--target/linux/ar71xx/base-files/lib/preinit/81_load_ath10k_board_bin23
1 files changed, 23 insertions, 0 deletions
diff --git a/target/linux/ar71xx/base-files/lib/preinit/81_load_ath10k_board_bin b/target/linux/ar71xx/base-files/lib/preinit/81_load_ath10k_board_bin
new file mode 100644
index 0000000000..1e1466cac3
--- /dev/null
+++ b/target/linux/ar71xx/base-files/lib/preinit/81_load_ath10k_board_bin
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+. /lib/ar71xx.sh
+
+do_load_ath10k_board_bin() {
+ # load board.bin
+ case $(ar71xx_board_name) in
+ nbg6716)
+ dd if=/dev/mtdblock2 \
+ bs=1 skip=20480 count=2116 \
+ of=/tmp/ath10k-board.bin
+ ;;
+ esac
+ [ -f /tmp/ath10k-board.bin ] || {
+ return
+ }
+ cmp -s /tmp/ath10k-board.bin /lib/firmware/ath10k/QCA988X/hw2.0/board.bin || {
+ cp /tmp/ath10k-board.bin /lib/firmware/ath10k/QCA988X/hw2.0/board.bin
+ rm /tmp/ath10k-board.bin
+ }
+}
+
+boot_hook_add preinit_main do_load_ath10k_board_bin