diff options
Diffstat (limited to 'target/linux/brcm47xx/base-files')
-rw-r--r-- | target/linux/brcm47xx/base-files/lib/upgrade/platform.sh | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/target/linux/brcm47xx/base-files/lib/upgrade/platform.sh b/target/linux/brcm47xx/base-files/lib/upgrade/platform.sh index d216ca4..412d6da 100644 --- a/target/linux/brcm47xx/base-files/lib/upgrade/platform.sh +++ b/target/linux/brcm47xx/base-files/lib/upgrade/platform.sh @@ -1,5 +1,11 @@ PART_NAME=firmware +# $(1): file to read magic from +# $(2): offset in bytes +get_magic_long_at() { + dd if="$1" skip=$2 bs=1 count=4 2>/dev/null | hexdump -v -n 4 -e '1/1 "%02x"' +} + brcm47xx_identify() { local magic @@ -15,6 +21,12 @@ brcm47xx_identify() { ;; esac + magic=$(get_magic_long_at "$1" 14) + [ "$magic" = "55324e44" ] && { + echo "cybertan" + return + } + echo "unknown" } |