Skip to content

CMSIS 5.7.0

Compare
Choose a tag to compare
@JonatanAntoni JonatanAntoni released this 14 Apr 15:35
· 816 commits to master since this release

Known Issues

GCC C-Startup .data/.bss section initialization (#632)

There is a misalignment between the GCC linker scripts and the C startup code.

The linker script creates the copy and zero tables using byte count for the section sizes. On the other hand the C startup routine interprets the size values as word count. Hence the routine copies four times the data than necessary. This array-overrun can lead to weird behavior and errors like hard faults.

Workaround: The linker script needs to be adopted as given in the issue #632. Please be aware that this adoption might not be in sync with the final fix. Keep an eye on that one when upgrading to next CMSIS release.

Release Notes

1) CMSIS-Build: 0.9.0/0.10.0 (beta)

  • Draft for CMSIS Project description (CPRJ)

  • CMSIS-Build tools download (new!)

    Version 0.10.0 (click to expand)

    New in 0.10.0

    • New command line options: --update, --quiet, --log, --intdir, --outdir (see usage for more information)
    • Building an executable always creates binaries in ELF, HEX and BIN format in output directory.
    • Added build progress information to build output.
    • Added makefile target 'rebuild' (clean + build).
    • Added makefile self-dependency. Generated makefile is only written if the content changed.
    • Added makefile target 'database' for generating a compilation database file.
    • Added special handling for layer files (layer..) copied unconditionally along with the layer on extract, remove, compose and add commands of cbuildgen.
    • Added special handling for layer markdown files (layer..md) being concatenated into README.md on compose command of cbuildgen.
    • Fixed: #970 Toolchain configuration files corrected to handle Cortex-M0+, Cortex-M35P, SC000, SC300 and ARMV81MML based devices.
    • Fixed: #971 Unnecessary rebuild of libraries when using GCC toolchain.

    1) Download installer

    • Linux/Windows 64
      sha256sum: f419aabb6d10cd048c4f134659a9d0a4fa080a4073e7ca22fbb3c731960e598f *cbuild_install.0.10.0.sh

    2) Toolchain download

    • Keil MDK IDE
      Version 5.31 (Jun 2020) is the latest version of MDK supporting the CMSIS-Project file format (*.cprj) export and import including export of layer information.

      • Windows 32-bit
        • Install MDK first.
        • The cbuild_install.sh allows you to specify the MDK installation path to setup AC6 compiler for you.
    • GNU Arm Embedded Toolchain:
      Version 9-2019-q4-major (Nov. 06th 2019):

    • ARM Compiler Version 6 license managed:
      Version 6.14.1 (Jun. 10th 2020)

      • Windows 32-bit Installer
        • Download installer
        • Extract archive unzip DS500-BN-00025-r5p0-16rel1.zip, run win-x86_32\setup.exe
        • Default installation path: C:\Program Files (x86)\ARMCompiler6.14.1\
      • Linux x86_64 Installer
        • Download installer
        • Extract the archive tar -xzf DS500-BN-00026-r5p0-16rel1.tgz
        • Run install_x86_64.sh

    3) Installation instructions

    4) Documentation

    5) License

    6) Questions, comments and feedback

CMSIS-Core(M): 5.4.0 (see revision history for details)

  • Cortex-M55 cpu support
  • Enhanced MVE support for Armv8.1-MML
  • Fixed device config define checks.
  • L1 Cache functions for Armv7-M and later

CMSIS-Core(A): 1.2.0 (see revision history for details)

  • Fixed GIC_SetPendingIRQ to use GICD_SGIR
  • Added missing DSP intrinsics
  • Reworked assembly intrinsics: volatile, barriers and clobber

CMSIS-DSP: 1.8.0 (see revision history for details)

  • Added new functions and function groups
  • Added MVE support

CMSIS-NN: 1.3.0 (see revision history for details)

  • Added MVE support
  • Further optimizations for kernels using DSP extension

CMSIS-RTOS2: 2.3.1

  • RTX 5.5.2 (see revision history for details)

CMSIS-Driver: 2.8.0

  • Added VIO API 0.1.0 (Preview)
  • Removed volatile from status related typedefs in APIs
  • Enhanced WiFi Interface API with support for polling Socket Receive/Send

CMSIS-Pack: 1.6.3 (see revision history for details)

  • Deprecating all types specific to cpdsc format. Cpdsc is replaced by Cprj with dedicated schema.

Devices

  • ARMCM55 device
  • ARMv81MML startup code recognizing __MVE_USED macro
  • Refactored vector table references for all Cortex-M devices
  • Reworked ARMCM* C-StartUp files.
  • Include L1 Cache functions in ARMv8MML/ARMv81MML devices

Utilities

Attention: Linux binaries moved to Linux64 folder!

  • SVDConv 3.3.35
  • PackChk 1.3.89