SCP-firmware Change Log ======================= Copyright (c) 2019, Arm Limited and Contributors. All rights reserved. SCP-firmware - version 2.4.0 ============================ New features ------------ - Module-based architecture with an event-driven execution model: - Firmware code is organized into modules, where a module fulfills a well- defined role (driver HAL, driver, protocol or service). - A framework drives the initialization, orchestration of, and interactions between modules. - Processor-agnostic module code enables firmware portability across systems: - Processor-dependent features (e.g. interrupt handling) are abstracted from the modules by the framework. - The framework relies on an interface whose implementation is processor- dependent to provide these features. - Module configurability easing the re-use of modules on different platforms: - Strict split between the hardware and software feature configuration data and module code. - A native framework test suite provides rapid development and validation of the core framework implementation. - Support for Armv7-M control processor architecture based on CMSIS v5 and Keil RTX 5. - Provides system initialization support to enable boot of the application cores. - Provides the following runtime services: - Power domain management - System power management - Performance domain management (Dynamic voltage and frequency scaling) - Clock management - Sensor management - Provides a reference implementation of the System Control and Management Interface v1.0 (SCMI, platform-side). The SCMI specification can be found [here](http://infocenter.arm.com/help/topic/com.arm.doc.den0056a/DEN0056A_System_Control_and_Management_Interface.pdf). - Provides a build system supporting: - The GNU Arm Embedded and Arm Compiler 6 toolchains - Platforms with multiple firmware images - In-source Doxygen documentation - Support for the SGM-775 platform Known issues ------------ - The build system does not configure the compiler to avoid code generation of unaligned accesses. As ARMv7-M targets are configured to trap on unaligned word or halfword accesses, this can result in hardware exceptions. [This patch](https://github.com/ARM-software/SCP-firmware/commit/d2a77e0d4d0d369f7504c032a380578a4d145438) fixes this issue.