#cortex-m #embedded-arm #renesas #arm-cortex-m #arm

nightly sys no-std ra-fsp-sys

Rust raw bindings for Renesas RA Flexible Software Package (FSP)

4 releases

new 0.1.4 May 23, 2025
0.1.3 May 22, 2025
0.1.2 May 22, 2025
0.1.1 May 22, 2025

#2088 in Embedded development

Download history

109 downloads per month
Used in ra-fsp-rs

MIT/Apache

25KB
467 lines

RA-FSP-SYS

This is a basic wrapper over Flexible Software Package, a bare minimum to correctly compile and run basic Rust program.

This crate should be used instead of cortex-m-rt, but it makes a best effort to mimic it's interface. This way, you can use Embassy and RTIC wihout any problems.

Runtime

  • Applies a manufacturer‑provided linker script to support features like ID code protection.
  • Basic vector table is provided by FSP, including Reset_Handler, which will call SystemInit (to configure C runtime, clocks etc) and then main.
  • Application specific vector table may be provided by the user using .application_vectors section. Associated PACs do provide it.

What you must provide

  • FSP_CFG env variable with header files to configure FSP.
    • Contains all r_.*_cfg.h coniguration files.
    • Containst /bsp directory witb bsp configurations, like bsp_cfg.h, board_cfg.h, bsp_clock_cfg.h etc.
  • memory.x.
  • device.x provided by PAC.
  • Add -C link-arg=-Tra-fsp-sys.x (as -Tlink.x with cortex-m-rt).
  • FSP_OVERWRITE env variable provides the source code for FSP.
  • CMSIS_OVERWRITE env variable provides the source code for CMSIS.

License

By using this software, you agree to the additonal terms and conditions found at: http://www.renesas.com/disclaimer.

script/fsp_base.ld, ra-fsp are licensed under Renesas license.

All Rust source code exept generated module is licensed under either of

at your option.

Dependencies

~0.6–3.5MB
~53K SLoC