System Control Processor Firmware

Open Source power and system management reference firmware


There is a strong trend in the industry to provide microcontrollers in systems to abstract various power, or other system management tasks, away from Application Processors (APs).

The Power Control System Architecture (PCSA - DEN0050C) describes how systems can be built following this approach. The PCSA defines the concept of the System Control Processor (SCP), a dedicated processor that is used to abstract power and system management tasks away from application processors.

Similar to the SCP, the Manageability Control Processor (MCP) follows the same approach with the goal of providing a management entry-point to the System on Chip (SoC) where manageability is required, such as on a SoC targeting servers.

SCP Firmware provides a software reference implementation for the System Control Processor (SCP) and Manageability Control Processor (MCP) components found in several Arm Compute Sub-Systems.

SCP Firmware has been recently made available as an open source project on GitHub and it's provided under a BSD-3-Clause license. 

The set of functionality includes:

  • Initialization of the system to enable application core boot

  • Runtime services:

    • Power domain management

    • System power management

    • Performance domain management (Dynamic voltage and frequency scaling)

    • Clock management

    • Sensor management

    • System Control and Management Interface (SCMI, platform-side), based on Arm SCMI Specification

  • Support for the GNU Arm Embedded and Arm Compiler 6 toolchains

  • Support for platforms with several control processors


Looking for SCP Firmware codebase?

Looking for Arm interface Standards?