Giter Club home page Giter Club logo

cmsis-driver_validation's Introduction

CMSIS-Driver Validation

Test suite for verifying that a peripheral driver implementation is compliant with the corresponding CMSIS-Driver Specification.

Overview

The branch main of this repository contains the code of CMSIS-Driver Validation Suite. User documentation explains the scope and the usage of the framework.

See verified releases of CMSIS-Driver Validation suite in source code archives and in CMSIS-Pack (.pack) format as download assets.

Feel free to raise an issue on GitHub to report a misbehavior (i.e. bugs), start discussions about enhancements or create a pull request with suggested modifications.

Supported Driver Interfaces

The CMSIS-Driver Validation provides tests for the following CMSIS-Driver interfaces:

Extensive tests with available test servers:

  • SPI - Serial Peripheral Interface driver.
  • USART - Universal Synchronous and Asynchronous Receiver/Transmitter interface driver.
  • WiFi - Wireless Fidelity Interface module/shield driver.

Basic tests:

  • CAN - Controller Area Network interface driver.
  • Ethernet - Ethernet MAC and PHY peripheral interface driver.
  • I2C - Inter-Integrated Circuit multi-master serial single-ended bus interface - driver.
  • MCI - Memory Card Interface driver for SD/MMC memory.
  • USB Device - Universal Serial Bus Device interface driver.
  • USB Host - Universal Serial Bus Host interface driver.

Repository Structure

Directory/File Content
Boards Driver Validation examples for various boards
Config Configuration files for the Driver Validation framework
Documentation Placeholder for the offline documentation in the pack
DoxyGen Source of the documentation
Include Header files for Driver Validation components
Scripts Script files for XML reports
Source Source files for Driver Validation components
Tools Various Server implementations for extensive testing
ARM.CMSIS-Driver_Validation.pdsc Open-CMSIS-Pack description file
gen_pack.sh Open-CMSIS-Pack generation script
LICENSE.txt License text for the repository content

Examples

Folder Boards contains example projects that show how to use the CMSIS-Driver Validation on a real hardware with available CMSIS-Driver implementations.The examples are also included in CMSIS-Driver Validation Software Pack. Details are explained in Examples documentation.

Build CMSIS-Driver Validation as Open-CMSIS-Pack

A generator script gen_pack.sh is provided for building the CMSIS-Driver Validation as Open-CMSIS-Pack using the gen-pack library. Simply follow the steps below:

  • Verify that following tools are installed on the PC:
  • Checkout this repository. For example in git bash with: git clone https://github.com/ARM-Software/CMSIS-Driver_Validation
  • In the local repository folder execute ./gen_pack.sh in the bash shell.
    • this creates a pack file in the local output folder. For example ./output/ARM.CMSIS-Driver_Validation.3.0.1-dev12+g3725082.pack.

License

Arm CMSIS-Driver Validation is licensed under Apache 2.0 license.

Useful resources

Link Description
CMSIS CMSIS GitHub repository
CMSIS-Driver Specification Specification of CMSIS-Driver API
CMSIS-Driver Reference CMSIS-Driver implementations for external peripheral devices
Open-CMSIS-Pack Overview of the Open-CMSIS-Pack project

cmsis-driver_validation's People

Contributors

miloradcvjetkovic avatar jkrech avatar robertrostohar avatar keilchris avatar vovamarch avatar vladimirumek avatar brondani avatar jonatanantoni avatar furbanc avatar reinhardkeil avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.