merge r17576 to 8.09
[openwrt/svn-archive/archive.git] / scripts / arm-magic.sh
index 3ac5e79b99b3386c5383274f8dbb80382c1eb867..e8f41d3372cfbe694afd101d7968895b371433a7 100755 (executable)
 # NOTE: for now it's for only IXP4xx in big endian mode
 
 # list of supported boards, in "boardname machtypeid" format
-for board in "avila 526" "gateway7001 731" "nslu2 597" "nas100d 865"
+for board in "avila 526" "gateway7001 731" "nslu2 597" "nas100d 865" "wg302v1 889" "wg302v2 890" "pronghorn 928" "pronghornmetro 1040" "compex 1273" "wrt300nv2 1077" "loft 849" "dsmg600 964" "fsg3 1091" "ap1000 1543" "tw2662 1658" "tw5334 1664" "ixdpg425 604" "cambria 1468" "sidewinder 1041"
 do
   set -- $board
+  hexid=$(printf %x\\n $2)
   if [ "$2" -lt "256" ]; then
     # we have a low machtypeid, we just need a "mov" (e3a)
-    echo -en "\xe3\xa0\x10\x$(printf %x\\n $2)" > $BIN_DIR/openwrt-$1-2.6-zImage
+    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)
-    hexid=$(printf %x\\n $2)
-    echo -en "\xe3\xa0\x10\x$(echo $hexid|cut -b "2 3")\xe3\x81\x1c\x$(echo $hexid|cut -b 1)" > $BIN_DIR/openwrt-$1-2.6-zImage
+    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
   fi
     # generate the image
-    cat $BIN_DIR/openwrt-ixp4xx-2.6-zImage >> $BIN_DIR/openwrt-$1-2.6-zImage
+    cat $BIN_DIR/openwrt-ixp4xx-zImage >> $BIN_DIR/openwrt-$1-zImage
 done