ath79: add seama header fixup for Qihoo C301
authorChuanhong Guo <gch981213@gmail.com>
Tue, 16 Jul 2019 11:38:27 +0000 (19:38 +0800)
committerChuanhong Guo <gch981213@gmail.com>
Tue, 16 Jul 2019 12:14:02 +0000 (20:14 +0800)
This script is copied from ar71xx. Without a header fixup, u-boot
checksum for kernel will fail after the first boot.

Fixes: a9360452f0 ("ath79: add support for Qihoo C301")
Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
target/linux/ath79/base-files/etc/uci-defaults/09_fix-checksum [new file with mode: 0644]

diff --git a/target/linux/ath79/base-files/etc/uci-defaults/09_fix-checksum b/target/linux/ath79/base-files/etc/uci-defaults/09_fix-checksum
new file mode 100644 (file)
index 0000000..22c9483
--- /dev/null
@@ -0,0 +1,15 @@
+#!/bin/sh
+. /lib/functions.sh
+
+fix_seama_header() {
+       local kernel_size=$(sed -n 's/mtd[0-9]*: \([0-9a-f]*\).*"kernel".*/\1/p' /proc/mtd)
+       [ "$kernel_size" ] && mtd -c 0x$kernel_size fixseama firmware
+}
+
+board=$(board_name)
+
+case "$board" in
+qihoo,c301)
+       fix_seama_header
+       ;;
+esac