From 75ed56a08a4ce978323259a59a8f45ceed511584 Mon Sep 17 00:00:00 2001 From: Mathias Kresin Date: Fri, 2 Mar 2018 19:28:50 +0100 Subject: ath79: add AVM FRITZ!WLAN Repeater 300E No known issues, everything works fine. Signed-off-by: Mathias Kresin --- .../etc/hotplug.d/firmware/10-ath9k-eeprom | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'target/linux/ath79/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom') diff --git a/target/linux/ath79/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom b/target/linux/ath79/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom index fc15caea6f..c2d87f58de 100644 --- a/target/linux/ath79/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom +++ b/target/linux/ath79/base-files/etc/hotplug.d/firmware/10-ath9k-eeprom @@ -24,11 +24,32 @@ ath9k_eeprom_extract() { ath9k_eeprom_die "failed to extract from $mtd" } +ath9k_eeprom_extract_reverse() { + local part=$1 + local offset=$2 + local count=$3 + local mtd + local reversed + local caldata + + mtd=$(find_mtd_chardev "$part") + reversed=$(hexdump -v -s $offset -n $count -e '/1 "%02x "' $mtd) + + for byte in $reversed; do + caldata="\x${byte}${caldata}" + done + + printf "%b" "$caldata" > /lib/firmware/$FIRMWARE +} + board=$(board_name) case "$FIRMWARE" in "ath9k-eeprom-pci-0000:00:00.0.bin") case $board in + "avm,fritz300e") + ath9k_eeprom_extract_reverse "urloader" 5441 1088 + ;; "ubnt,unifi") ath9k_eeprom_extract "art" 4096 2048 ;; -- cgit v1.2.3