Skip to content

Executing custom ELF file on Vybrid with OpenOCD GDB

Andrey Smirnov edited this page Aug 8, 2015 · 2 revisions

Open up a terminal and do the following:

$ git clone [email protected]:ndreys/zodiac-openocd.git
$ cd zodiac-openocd
$ git checkout vybrid
$ ./bootstrap
$ ./configure --enable-ftdi
$ src/openocd -s tcl -f tcl/board/zodiac-vybrid-development-board.cfg

In a separate terminal do the following:

$ git clone https://bitbucket.org/pid1solutions/zodiac-vybrid-uboot.git
$ cd zodiac-vybrid-uboot
$ git checkout semihosting-backport
$ export ARCH=arm
$ export CROSS_COMPILE=arm-none-eabi- # arm-none-eabi toolcahin can be obtained from https://launchpad.net/gcc-arm-embedded
$ make zii-vf610_dev
$ $(CROSS_COMPILE)gdb --eval-command="target remote localhost:3333"

in GDB prompt:

(gdb) file u-boot
(gdb) load
(gdb) set $pc=0x3f000800
(gdb) mon arm core_state arm
(gdb) c

To use semihosting do:

(gdb) mon arm semihosting enable

Then in U-Boot you can do:

=> smhload <file path relative to OpenOCD's ${PWD}> <address of memory>

to content of files on the host into target's memory