1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-05 15:34:59 +02:00
openwrt-xburst/scripts/arm-magic.sh
kaloz 58f98ac382 * upgrade ixp4xx to 2.6.23.12
* upgrade to the new ethernet driver (temporary breaks Marvell switch support on Compex units)
 * handle NPE microcodes in a user friendly way - YAY for Intel for changing the license
 * add support for the Lanready AP1000 (used in for example the Ligowave LGO2AGN)

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10016 3c298f89-4303-0410-b956-a3cf2f4a3e73
2007-12-28 21:00:01 +00:00

39 lines
1.7 KiB
Bash
Executable File

#!/usr/bin/env bash
#
# Empty/wrong machtype-workaround generator
#
# Copyright (C) 2006 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
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# 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" "wg302v2 890" "pronghornmetro 1040" "compex 1273" "wrt300nv2 1077" "loft 849" "dsmg600 964" "fsg3 1091" "ap1000 1543"
do
set -- $board
hexid=$(printf %x\\n $2)
if [ "$2" -lt "256" ]; then
# we have a low machtypeid, we just need a "mov" (e3a)
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
fi
# generate the image
cat $BIN_DIR/openwrt-ixp4xx-zImage >> $BIN_DIR/openwrt-$1-zImage
done