CMSIS-Driver Implementations  Version 2.4.1
MCU independent device driver implementations and template files of the CMSIS-Driver API specification
CMSIS-Driver Implementations Documentation

The CMSIS-Driver specification is a software API that describes peripheral driver interfaces for middleware stacks and user applications.

This software pack contains actual CMSIS-Driver implementations for various devices. It is publicly hosted on GitHub and interested parties are welcome to push their drivers to this repository:


The CMSIS is provided free of charge by Arm under Apache 2.0 license. View the Apache 2.0 License.

ARM::CMSIS-Driver Pack

The ARM::CMSIS-Driver Pack contains the following:

File/Directory Content
ARM.CMSIS-Driver.pdsc Package description file in CMSIS-Pack format.
LICENSE.txt CMSIS license agreement (Apache 2.0)
Config Configuration files for I2C, NAND, and SPI bus implementations
Documentation This documentation
ETH Ethernet driver implementations
Flash Flash memory driver implementations
I2C I2C driver implementations
NAND NAND driver implementations
SPI SPI driver implementations
Utilities Utilities for generating the pack
WiFi WiFi driver implementations

Revision History

Version Description
  • Updated Inventek ISM43362 WiFi driver
  • Corrected PHY_LAN8742A power down bit definition
  • Added Inventek ISM43362 WiFi driver
  • Added support for Cortex-M1
  • NAND MemoryBus driver updated:
    • Fixed Ready/Busy configuration handling
    • Enhanced compatibility for ARM Compiler 6
  • Flash Drivers updated:
    • Added data cache handling to memory bus based drivers
    • Fixed warnings flagged by ARM Compiler 6
  • Added web link to hardware documentation for CMSIS-Driver components
  • Documentation added
  • Set Cvendor to "Keil" in all driver components for ease of migration of existing projects
  • Initial public release
  • Initial internal release