diff options
author | Imre Kaloz <kaloz@openwrt.org> | 2012-11-11 11:07:59 +0000 |
---|---|---|
committer | Imre Kaloz <kaloz@openwrt.org> | 2012-11-11 11:07:59 +0000 |
commit | 79289bdca535da058965f4e5b665a9ef63650046 (patch) | |
tree | 8436dc4f1c223d753bc9cfabc883c0aad6920347 | |
parent | 298a8e2300599e7d2e557cf905b832662a170f8c (diff) | |
download | upstream-79289bdca535da058965f4e5b665a9ef63650046.tar.gz upstream-79289bdca535da058965f4e5b665a9ef63650046.tar.bz2 upstream-79289bdca535da058965f4e5b665a9ef63650046.zip |
fix machtype handling above 4096
SVN-Revision: 34141
-rwxr-xr-x | scripts/arm-magic.sh | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/scripts/arm-magic.sh b/scripts/arm-magic.sh index 8bc35c1d4b..e40f9fb17f 100755 --- a/scripts/arm-magic.sh +++ b/scripts/arm-magic.sh @@ -2,7 +2,7 @@ # # Empty/wrong machtype-workaround generator # -# Copyright (C) 2006 Imre Kaloz <kaloz@openwrt.org> +# Copyright (C) 2006-2012 Imre Kaloz <kaloz@openwrt.org> # based on linux/arch/arm/boot/compressed/head-xscale.S # # This program is free software; you can redistribute it and/or modify @@ -31,7 +31,11 @@ do printf "\xe3\xa0\x10\x$hexid" > $BIN_DIR/openwrt-$1-zImage else # we have a high machtypeid, we need a "mov" (e3a) and an "orr" (e38) - printf "\xe3\xa0\x10\x$(echo $hexid|cut -b "2 3")\xe3\x81\x1c\x$(echo $hexid|cut -b 1)" > $BIN_DIR/openwrt-$1-zImage + if [ "$2" -lt "4096" ]; then + printf "\xe3\xa0\x10\x$(echo $hexid|cut -b "2 3")\xe3\x81\x1c\x$(echo $hexid|cut -b 1)" > $BIN_DIR/openwrt-$1-zImage + else + printf "\xe3\xa0\x10\x$(echo $hexid|cut -b "3 4")\xe3\x81\x1c\x$(echo $hexid|cut -b "1 2")" > $BIN_DIR/openwrt-$1-zImage + fi fi # generate the image cat $BIN_DIR/$IMG_PREFIX-zImage >> $BIN_DIR/openwrt-$1-zImage |