aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorImre Kaloz <kaloz@openwrt.org>2012-11-11 11:07:59 +0000
committerImre Kaloz <kaloz@openwrt.org>2012-11-11 11:07:59 +0000
commit3cacce55ae1b2c311f6f7b749b55e0114bed47e0 (patch)
treed8e98ddc271e01aed201944234df42d63f44b644
parentf0bff1a81a7a00ed6106e70fc29c151cdfc0e0a1 (diff)
downloadupstream-3cacce55ae1b2c311f6f7b749b55e0114bed47e0.tar.gz
upstream-3cacce55ae1b2c311f6f7b749b55e0114bed47e0.tar.bz2
upstream-3cacce55ae1b2c311f6f7b749b55e0114bed47e0.zip
[ixp4xx]: fix machtype handling above 4096
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34141 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rwxr-xr-xscripts/arm-magic.sh8
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