2021-11-03 01:25:13 +01:00
|
|
|
[target.'cfg(all(target_arch = "arm", target_os = "none"))']
|
|
|
|
# uncomment ONE of these three option to make `cargo run` start a GDB session
|
|
|
|
# which option to pick depends on your system
|
|
|
|
# runner = "arm-none-eabi-gdb -q -x openocd.gdb"
|
|
|
|
# runner = "gdb-multiarch -q -x openocd.gdb"
|
|
|
|
# runner = "gdb -q -x openocd.gdb"
|
2021-11-06 20:22:25 +01:00
|
|
|
runner = "gdb-multiarch -q -x jlink.gdb"
|
2021-11-03 01:25:13 +01:00
|
|
|
|
|
|
|
rustflags = [
|
|
|
|
# This is needed if your flash or ram addresses are not aligned to 0x10000 in memory.x
|
|
|
|
# See https://github.com/rust-embedded/cortex-m-quickstart/pull/95
|
|
|
|
"-C", "link-arg=--nmagic",
|
|
|
|
|
|
|
|
# LLD (shipped with the Rust toolchain) is used as the default linker
|
|
|
|
"-C", "link-arg=-Tlink.x",
|
|
|
|
|
|
|
|
# if you run into problems with LLD switch to the GNU linker by commenting out
|
|
|
|
# this line
|
|
|
|
# "-C", "linker=arm-none-eabi-ld",
|
|
|
|
|
|
|
|
# if you need to link to pre-compiled C libraries provided by a C toolchain
|
|
|
|
# use GCC as the linker by commenting out both lines above and then
|
|
|
|
# uncommenting the three lines below
|
|
|
|
# "-C", "linker=arm-none-eabi-gcc",
|
|
|
|
# "-C", "link-arg=-Wl,-Tlink.x",
|
|
|
|
# "-C", "link-arg=-nostartfiles",
|
|
|
|
]
|
|
|
|
|
|
|
|
[build]
|
|
|
|
# Pick ONE of these compilation targets
|
|
|
|
target = "thumbv6m-none-eabi" # Cortex-M0 and Cortex-M0+
|
|
|
|
# target = "thumbv7m-none-eabi" # Cortex-M3
|
|
|
|
# target = "thumbv7em-none-eabi" # Cortex-M4 and Cortex-M7 (no FPU)
|
|
|
|
# target = "thumbv7em-none-eabihf" # Cortex-M4F and Cortex-M7F (with FPU)
|
|
|
|
# target = "thumbv8m.base-none-eabi" # Cortex-M23
|
|
|
|
# target = "thumbv8m.main-none-eabi" # Cortex-M33 (no FPU)
|
|
|
|
# target = "thumbv8m.main-none-eabihf" # Cortex-M33 (with FPU)
|