Skip to content

Releases: rust-embedded/cortex-m

v0.7.7

04 Jan 01:32
v0.7.7
bb4a782
Compare
Choose a tag to compare

What's Changed

  • cortex-m v0.7.7: add documentation for critical-section-single-core by @adamgreig in #458

Full Changelog: v0.7.6...v0.7.7

v0.7.6

13 Aug 17:29
v0.7.6
641e419
Compare
Choose a tag to compare

v0.7.6 - 2022-08-12

  • Added critical-section-single-core feature which provides an implementation for the critical-section crate for single-core systems, based on disabling all interrupts. (#448)

v0.7.5

31 May 18:22
e0bfe3a
Compare
Choose a tag to compare

Deprecated

  • the ptr() function on all peripherals register blocks in favor of
    the associated constant PTR (#386).

Changed

  • The inline-asm feature no longer requires a nightly Rust compiler, but
    does require Rust 1.59 or above.

Fixed

  • Fixed singleton!() statics sometimes ending up in .data instead of .bss (#364, #380).
    (Backported from upcoming 0.8 release).

v0.7.4

02 Jan 18:18
2e2cb78
Compare
Choose a tag to compare

v0.7.4 - 2021-12-31

Added

  • Added support for additional DWT counters (#349)
    • CPI counter
    • Exception overhead counter
    • LSU counter
    • Folded-instruction counter
  • Added DWT.set_cycle_count (#347).
  • Added support for the Cortex-M7 TCM and cache access control registers.
    There is a feature cm7 to enable access to these (#352).
  • Add derives for serde, Hash, and PartialOrd to VectActive behind feature
    gates for host-platform use (#363).
  • Support host platforms besides x86_64 (#369).
  • Added delay::Delay::with_source, a constructor that lets you specify
    the SysTick clock source (#374).

Fixed

  • Fix incorrect AIRCR PRIGROUP mask (#338, #339).
  • Fix nightly users of inline-asm breaking now that the asm macro is removed
    from the prelude (#372).

Deprecated

  • DWT::get_cycle_count has been deprecated in favor of DWT::cycle_count.
    This change was made for consistency with the C-GETTER convention. (#349)

v0.7.3

03 Jul 21:04
45e7ab7
Compare
Choose a tag to compare

[v0.7.3] - 2021-07-03

Fixed

  • Fixed compilation for native targets on non-x86 host systems (#336, #337).

Added

  • The Delay struct now offers direct delay_us() and delay_ms() methods
    without having to go through the embedded-hal traits (#344).

v0.7.2

07 Mar 22:47
653d218
Compare
Choose a tag to compare

Fixed

  • Fixed a bug where calling asm::delay() with an argument of 0 or 1 would
    underflow, leading to a very long delay.

v0.6.7

26 Jan 23:33
17fe7ec
Compare
Choose a tag to compare
v0.6.7

v0.7.1

25 Jan 11:20
ad7e01b
Compare
Choose a tag to compare

Added

  • New assembly methods asm::semihosting_syscall, asm::bootstrap, and
    asm::bootload.

Deprecated

  • msp::write has been deprecated in favor of asm::bootstrap. It was not
    possible to use msp::write without causing Undefined Behavior, so all
    existing users are encouraged to migrate.

Fixed

  • Fixed a bug in asm::delay which could lead to incorrect codegen and
    infinite loops.
  • Improved timing guarantees of asm::delay on multiple-issue CPU cores.
  • Additional compiler fences added to inline assembly where necessary.
  • Fixed DWARF debug information in pre-built assembly binaries.

v0.6.6

25 Jan 23:40
2dae1e4
Compare
Choose a tag to compare

Fixed

  • Fixed missing ITM reexport on thumbv8m.base targets.

v0.6.5

25 Jan 03:03
34852c1
Compare
Choose a tag to compare

This release is forwards-compatible with cortex-m 0.7, and depends on and re-exports many types from that version. Both 0.6.5 and 0.7 may co-exist in a build.