ARMmbed / ARMmbed/cmsis-core

Support for CMSIS version 4 and beyond

Open
#30 1 comment 0 reactions 0 assignees View on GitHub
mirrored
Dominant language
C
Stars
6
Forks
23
PR merge metrics
No merged PRs in 30d

Description

The ARM mbed cmsis-core files are currently from CMSIS version 3.20, which is more than 3 years old by now. CMSIS version 4.5 was recently released, and the later versions of CMSIS define new macros for use by silicon vendors in device header files. This means that at some point in the future, silicon vendors may start to depend on symbols only defined in newer versions of CMSIS in their device header files.

Such symbols include the `_I`, `_O`and `_IO` macros. In CMSIS 4.2 and newer, these have been replaced by `_IM`, `_OM` and `_IOM` for structure members. The old symbols still exist, but the M-suffixed ones are recommended for new devices.

How will ARM mbed support this going forward? Will the CMSIS core header files in cmsis-core be updated to newer versions, or will mbed require silicon vendors to maintain device header files compatible with CMSIS 3.20 for the foreseeable future? If the core headers are updated with backwards-incompatible changes, how will this be handled with regards to existing mbed enabled devices?

@0xc0170

Contributor guide

No contributing guide indexed for this repository

Research direction

Review the current CMSIS Core Headers in the cmsis-core repository and compare them with CMSIS 4.5, focusing on the _I, _O, _IO, _IM, _OM, and _IOM symbols mentioned in the issue. Determine the compatibility and upgrade requirements for existing mbed-enabled devices; done should be a decided support path rather than an isolated header edit.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.