Skip to content

VladimirUmek/alif_ensemble-cmsis-dfp

 
 

Repository files navigation

Ensemble DFP

Modifications to the upstream Alif DFP

- Updated DFP to support CMSIS-Compiler 2.0.0

  • replaces version that supported CMSIS-Compiler 1.0.0
  • the main difference is in how STDIO components are represented

- Changed component class for drivers that have CMSIS defined APIs

  • change from Cclass="Device" Cgroup="SOC Peripherals" to Cclass="CMSIS Driver"
  • deleted header files for driver APIs that reside in CMSIS pack
  • change from Csub to Cgroup
    Csub Cgroup
    USART USART
    I2S SAI
    I2C I2C
    LPI2C I2C:LPI2C
    Ethernet MAC Ethernet MAC
    SPI SPI

- Added GPIO driver using CMSIS Driver API specification

  • GPIO driver using Alif defined API was renames
  • extension that would cover functionality gap between CMSIS and Alif API is not yet implemented

Open Items and Missing features

As we work towards the goal to enable Ensemble devices together with DevKit and AppKit boards as preferred platform for AI/ML workflows (and generic examples) the issues below were found.

The list shall be updated regularly.

Closed Items and Problems Fixed

  • Driver components that implement CMSIS-Driver APIs (see CMSIS docs, Covered Interfaces) shall be moved to the CMSIS Driver class (Cclass="CMSIS Driver")

    • Solution: component names were changed, see pdsc
  • GPIO driver exists with an API that differs from one defined by CMSIS

  • Retargeting components shall be updated to support CMSIS-Compiler 2.0.0

    • STDIO components were redefined in CMSIS-Compiler 2.0.0 and are incompatible with 1.0.0
    • Solution: components and implementation was changed, see commit
  • Code download to MRAM does not work when using uVision and UlinkPRO

    • Solution: debug sequences were added and flash algorithm was updated
    • Fixed in Ensemble DFP v1.3.3

About

Alif Semiconductor CMSIS DFP for Ensemble devices.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 98.0%
  • Python 2.0%