The base branch M-Labs/zynq-rs:master has new changes
2021-07-13 15:41:55 +08:00
2020-09-09 15:01:39 +08:00
2021-07-13 15:41:55 +08:00
2021-06-19 22:25:07 +08:00
2021-05-29 12:17:59 +08:00
2021-05-29 14:01:29 +08:00
2020-01-16 02:13:11 +08:00
2021-06-19 22:40:09 +08:00
2021-05-29 14:09:11 +08:00
2021-06-19 22:47:21 +08:00
2021-04-06 16:46:38 +08:00
2021-05-30 07:37:27 +08:00
2020-11-18 17:45:43 +08:00
2021-01-15 17:08:14 +08:00

Bare-metal Rust on Zynq-7000

Supported features:

  • Clocking setup
  • UART
  • SDRAM setup
  • Ethernet with smoltcp and async-await on TCP sockets
  • SD card
  • PL programming and startup
  • Pure Rust SZL first-stage bootloader, with SD boot and netboot
  • Control of second CPU core and message passing, with async-await support

Supported boards:

  • Kasli-SoC
  • ZC706
  • Red Pitaya
  • Cora Z7-10 (seems to also run on Cora Z7-07S, including dual-core support)

Build

nix-shell --command "cargo xbuild --release -p experiments"

Currently the ELF output is placed at target/armv7-none-eabihf/release/experiments

Debug

Running on the ZC706

nix-shell --command "cargo xbuild --release -p experiments"
cd openocd
openocd -f zc706.cfg

Running on the Cora Z7-10

nix-shell --command "cd experiments && cargo xbuild --release --no-default-features --features=target_coraz7"
cd openocd
openocd -f cora-z7-10.cfg

Loading a bitstream into volatile memory

openocd -f zc706.cfg -c "pld load 0 blinker_migen.bit; exit"

License

Copyright (C) 2019-2021 M-Labs Limited. Released under the GNU LGPL v3. See the LICENSE file for details.

Description
Bare-metal Rust on the Xilinx Zynq ZC706 devkit
Readme 1.2 MiB
Languages
Rust 91.8%
Tcl 5.9%
HAProxy 1.1%
Nix 0.5%
Shell 0.4%
Other 0.2%