view Bootloader/Scripts/swdLoad.bash @ 401:99f93dec8fea

Start removing select Linux-isms bash might not be in /bin. Don't expect it there.
author Dan McGregor <dan.mcgregor@usask.ca>
date Mon, 10 Aug 2015 14:49:46 -0600
parents f4d4cad283c6
children
line wrap: on
line source

#!/usr/bin/env bash
# Loads firmware image using an SWD Flasher
# Uses MCHCK ruby flasher toolchain
# NOTE: Only tested with a buspirate on Linux

# Arg 1: Path to firmware image
# Arg 2: Address to flash to (byte address)

# Must have two args
if [ "$#" -ne 2 ]; then
	echo "Usage:   `basename $0` <firmware binary> <starting address>"
	echo "Example: `basename $0` kiibohd_bootloader.bin 0"
	exit 1
fi

# First check to see if the flasher toolchain is available
if [ ! -d "programmer" ]; then
	# Use git to download the toolchain
	git clone https://github.com/mchck/programmer.git
fi

# Make sure the toolchain is up to date
cd programmer
#git pull --rebase
cd ..

# Attempt to flash
# Udev rules have been applied to name the buspirate as /dev/buspirate (instead of something like /dev/ttyUSB0)
# By default only root can access serial devices on Linux
#ruby programmer/flash.rb name=buspirate:dev=/dev/buspirate --mass-erase
ruby programmer/flash.rb name=buspirate:dev=/dev/buspirate "$1" "$2"
#ruby programmer/flash.rb name=buspirate:dev=/dev/buspirate --mass-erase "$1" "$2"