Initial commit
This commit is contained in:
78
openocd/stm32f4-load
Executable file
78
openocd/stm32f4-load
Executable file
@@ -0,0 +1,78 @@
|
||||
#! /bin/bash
|
||||
|
||||
#if [ -z $RODOS_ROOT ]; then
|
||||
# source `dirname $0`/print_no_envs_warning
|
||||
#fi
|
||||
|
||||
#source ${RODOS_MAKES}/stm32f4-set-vars
|
||||
|
||||
FLASH_TOOL=openocd
|
||||
FLASH_TOOL_PATH=/usr/bin
|
||||
OBJCOPY=arm-none-eabi-objcopy
|
||||
OBJCOPY_PATH=
|
||||
|
||||
ELF_NAME=$1
|
||||
|
||||
if [ -x ${FLASH_TOOL_PATH}/${FLASH_TOOL} ]; then
|
||||
echo "${FLASH_TOOL}: installed"
|
||||
FLASH_TOOL=${FLASH_TOOL_PATH}/${FLASH_TOOL}
|
||||
else
|
||||
# look for flash tool in default path
|
||||
command -v ${FLASH_TOOL} >/dev/null 2>&1 || { echo "${FLASH_TOOL}: NOT installed" >&2; exit 1; }
|
||||
echo "${FLASH_TOOL}: installed "
|
||||
FLASH_TOOL="$(command -v ${FLASH_TOOL})"
|
||||
fi
|
||||
|
||||
|
||||
if [ -x $OBJCOPY_PATH/$OBJCOPY ]; then
|
||||
echo "$OBJCOPY: installed"
|
||||
OBJCOPY=${OBJCOPY_PATH}/${OBJCOPY}
|
||||
else
|
||||
# look for objcopy in default path
|
||||
command -v ${OBJCOPY} >/dev/null 2>&1 || { echo "${OBJCOPY}: NOT installed" >&2; exit 1; }
|
||||
echo "${OBJCOPY}: installed"
|
||||
OBJCOPY="$(command -v ${OBJCOPY})"
|
||||
fi
|
||||
|
||||
|
||||
#if [ -f ./${ARCH}.elf ]; then
|
||||
# echo "${ARCH}.elf: OK"
|
||||
rm stm32f4.hex &> /dev/null
|
||||
$OBJCOPY -O ihex ${ELF_NAME} stm32f4.hex
|
||||
#else
|
||||
# echo "${ARCH}.elf: FAIL"
|
||||
# exit 1;
|
||||
#fi
|
||||
|
||||
|
||||
#if [ -f ./${ELF_NAME}.hex ]; then
|
||||
# echo "${ARCH}.hex: OK"
|
||||
#else
|
||||
# echo "${ARCH}.hex: FAIL"
|
||||
# exit 1;
|
||||
#fi
|
||||
|
||||
|
||||
|
||||
if [ ! -f /etc/udev/rules.d/49-stlinkv1.rules -o ! -f /etc/udev/rules.d/49-stlinkv2.rules ]
|
||||
then
|
||||
echo "superuser password needed to access USB-Port"
|
||||
|
||||
# mount rule for stlink1
|
||||
echo "SUBSYSTEMS==\"usb\", ATTRS{idVendor}==\"0483\", ATTRS{idProduct}==\"3744\", MODE:=\"0666\", SYMLINK+=\"stlinkv1_%n\"" > 49-stlinkv1.rules
|
||||
|
||||
# mount rule for stlink2
|
||||
echo "SUBSYSTEMS==\"usb\", ATTRS{idVendor}==\"0483\", ATTRS{idProduct}==\"3748\", MODE:=\"0666\", SYMLINK+=\"stlinkv2_%n\"" > 49-stlinkv2.rules
|
||||
|
||||
sudo mv 49-stlinkv1.rules /etc/udev/rules.d/
|
||||
sudo mv 49-stlinkv2.rules /etc/udev/rules.d/
|
||||
|
||||
sudo udevadm trigger
|
||||
sudo udevadm control --reload-rules
|
||||
|
||||
sleep 1s
|
||||
fi
|
||||
|
||||
|
||||
echo "flashing ..."
|
||||
${FLASH_TOOL} -f $(dirname "$0")/openocd_flash.cfg
|
Reference in New Issue
Block a user