Bare-metal Rust on Zynq-7000
2e8d291ee7
change to using the olimex-arm-usb-tiny and adjust openocd srst settings so the failure is now recoverable |
||
---|---|---|
.cargo | ||
experiments | ||
libboard_zc706 | ||
libboard_zynq | ||
libcortex_a9 | ||
libregister | ||
openocd | ||
.gitignore | ||
armv7-none-eabihf.json | ||
build.rs | ||
Cargo.lock | ||
Cargo.toml | ||
channel-rust-nightly.toml | ||
default.nix | ||
link.x | ||
qemu.gdb | ||
README.md | ||
runner.sh | ||
shell.nix |
Build
nix-shell --command "cargo xbuild --release"
Debug
Using the Xilinx toolchain
Tested with the ZC706 board.
Run the Xilinx Microprocessor Debugger:
/opt/Xilinx/14.7/ISE_DS/EDK/bin/lin64/xmd
Connect to target (given it is connected and you have permissions):
connect arm hw
Leave xmd running.
Start the Xilinx version of the GNU debugger with your latest build:
/opt/Xilinx/14.7/ISE_DS/EDK/gnu/arm/lin/bin/arm-xilinx-linux-gnueabi-gdb zc706
Connect the debugger to xmd over TCP on localhost:
target remote :1234
Proceed using gdb with load
, c
Using OpenOCD
Running on the ZC706
nix-shell --command "cargo xbuild --release"
cd openocd
openocd -f zc706.cfg
Running on the Cora Z7-10
nix-shell --command "cargo xbuild --release --no-default-features --features=target_cora_z7_10"
cd openocd
openocd -f cora-z7-10.cfg