Support for CMSIS version 4 and beyond
- 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