forked from Ivasoft/openwrt
It was reported the caldata on the FritzBox 7430 is not only stored at
different offsets, but is also larger than the current output size
limit.
Increase the output file size limit (after deflate) by 1024 bytes.
Ref: FS#3604 ("ath9k firmware is 0 bytes on Fritzbox 7430")
Signed-off-by: David Bauer <mail@david-bauer.net>
45 lines
1.2 KiB
Bash
45 lines
1.2 KiB
Bash
#!/bin/sh
|
|
|
|
[ -e /lib/firmware/$FIRMWARE ] && exit 0
|
|
|
|
. /lib/functions/caldata.sh
|
|
|
|
case "$FIRMWARE" in
|
|
"ath9k-eeprom-pci-0000:00:0e.0.bin" | \
|
|
"ath9k-eeprom-pci-0000:01:00.0.bin" | \
|
|
"ath9k-eeprom-pci-0000:02:00.0.bin")
|
|
board=$(board_name)
|
|
|
|
case "$board" in
|
|
avm,fritz3370-rev2-hynix|\
|
|
avm,fritz3370-rev2-micron|\
|
|
avm,fritz7362sl)
|
|
caldata_extract_reverse "urlader" 0x1541 0x440
|
|
;;
|
|
avm,fritz3390)
|
|
caldata_extract_reverse "urlader" 0x2546 0x440
|
|
;;
|
|
avm,fritz7360sl|\
|
|
avm,fritz7360-v2)
|
|
caldata_extract "urlader" 0x985 0x1000
|
|
;;
|
|
avm,fritz7412|\
|
|
avm,fritz7430)
|
|
/usr/bin/fritz_cal_extract -i 1 -s 0x1e000 -e 0x207 -l 5120 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader") || \
|
|
/usr/bin/fritz_cal_extract -i 1 -s 0x1e800 -e 0x207 -l 5120 -o /lib/firmware/$FIRMWARE $(find_mtd_chardev "urlader")
|
|
;;
|
|
bt,homehub-v5a)
|
|
caldata_extract_ubi "caldata" 0x1000 0x1000
|
|
ath9k_patch_mac_crc $(macaddr_add $(mtd_get_mac_binary_ubi caldata 0x110c) 2) 0x10c
|
|
;;
|
|
tplink,tdw8970|\
|
|
tplink,tdw8980)
|
|
caldata_extract "boardconfig" 0x21000 0x1000
|
|
;;
|
|
*)
|
|
caldata_die "board $board is not supported yet"
|
|
;;
|
|
esac
|
|
;;
|
|
esac
|