3 . /lib/functions/system.sh
6 do_load_ath10k_board_bin() {
8 case $(ar71xx_board_name) in
10 dd if=/dev/mtdblock2 \
11 bs=1 skip=20480 count=2116 \
12 of=/tmp/ath10k-board.bin
17 mac=$(macaddr_add $(cat /sys/class/net/eth1/address) -2)
19 dd if=/dev/mtdblock4 \
20 bs=1 skip=20480 count=6 \
21 of=/tmp/ath10k-board.bin
22 macaddr_2bin $mac >> /tmp/ath10k-board.bin
23 dd if=/dev/mtdblock4 \
24 bs=1 skip=20492 count=2104 >> /tmp/ath10k-board.bin
28 mac=$(macaddr_add $(cat /sys/class/net/eth1/address) +2)
30 dd if=/dev/mtdblock2 \
31 bs=1 skip=20480 count=6 \
32 of=/tmp/ath10k-board.bin
33 macaddr_2bin $mac >> /tmp/ath10k-board.bin
34 dd if=/dev/mtdblock2 \
35 bs=1 skip=20492 count=2104 >> /tmp/ath10k-board.bin
40 mac=$(mtd_get_mac_ascii devdata wlan5mac)
42 if [ -z "$mac" ]; then
43 mac=$(macaddr_add $(cat /sys/class/net/eth0/address) -2)
46 dd if=/dev/mtdblock10 \
47 bs=1 skip=20480 count=6 \
48 of=/tmp/ath10k-board.bin
49 macaddr_2bin $mac >> /tmp/ath10k-board.bin
50 dd if=/dev/mtdblock10 \
51 bs=1 skip=20492 count=2104 >> /tmp/ath10k-board.bin
55 [ -f /tmp/ath10k-board.bin ] || {
58 cmp -s /tmp/ath10k-board.bin /lib/firmware/ath10k/QCA988X/hw2.0/board.bin || {
59 cp /tmp/ath10k-board.bin /lib/firmware/ath10k/QCA988X/hw2.0/board.bin
60 rm /tmp/ath10k-board.bin
64 boot_hook_add preinit_main do_load_ath10k_board_bin