summaryrefslogtreecommitdiff
path: root/nuttx/configs/olimex-strp711/scripts/oocd.sh
blob: 44ff4fa6f9bc67f61781ad91ee1fc0ce4193766a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#!/bin/sh

# Set up pathes to binaries, scripts, configuration files

installdir=/usr/local/bin
openocd=$installdir/openocd

# The root to the top-level NuttX directory should be in an environment variable

if [ -z $STR41XSCRIPTS ]; then
	echo "Environment variable $STR41XSCRIPTS is not defined"
	echo "Has NuttX been configured?"
	echo "If so, try sourcing the setenv.sh script in the top-level directory"
	exit 1
fi

# Check that at least one configuration file exists at that point
if [ ! -f $STR41XSCRIPTS/oocd_wiggler.cfg ]; then
	echo "No configuration files found at $STR41XSCRIPTS"
	echo "Path to configuration files unknown"
	exit 1
fi

# Parse command line inputs

usage="USAGE: $0 [-h] [-d]  [-pp] [-ftdi]"

debug=no
interface=pp
oocdcfg=$STR41XSCRIPTS/oocd_wiggler.cfg
while [ ! -z "$1" ]; do
	case $1 in
	-d )
		debug=yes
		set -x
		;;
	-pp )
		interface=pp
		oocdcfg=$STR41XSCRIPTS/oocd_wiggler.cfg
		;;
	-ftdi )
		interface=ftdi
		oocdcfg=$STR41XSCRIPTS/oocd_ftdi.cfg
		;;
	-h )
		echo $usage
		exit 0
		;;
	* )
		echo "Unrecognized option: $1"
		echo $usage
		exit 1
		;;
	esac
	shift
done

# Setup debug options

export options="-d 1"

# Run OpenOCD -- here it is assumed (1) that you must have root priveleges to 
# execute OpenOCD and (2) that your user is listed in the /etc/sudoers file.

sudo $openocd $options -f $oocdcfg