Arm Community
Arm Community
  • Site
  • User
  • Site
  • Search
  • User
Arm Community blogs
Arm Community blogs
Architectures and Processors blog Improved Power Management and System Control through SCMI
  • Blogs
  • Mentions
  • Sub-Groups
  • Tags
  • Jump...
  • Cancel
More blogs in Arm Community blogs
  • AI blog

  • Announcements

  • Architectures and Processors blog

  • Automotive blog

  • Embedded and Microcontrollers blog

  • Internet of Things (IoT) blog

  • Laptops and Desktops blog

  • Mobile, Graphics, and Gaming blog

  • Operating Systems blog

  • Servers and Cloud Computing blog

  • SoC Design and Simulation blog

  • Tools, Software and IDEs blog

Tell us what you think
Tags
  • White Paper
  • System on Chip (SoC)
  • performance
  • Power Management Kits
  • System Control and Management Interface
  • System Design
Actions
  • RSS
  • More
  • Cancel
Related blog posts
Related forum threads

Improved Power Management and System Control through SCMI

Souvik Chakravarty
Souvik Chakravarty
August 5, 2019
4 minute read time.

Power and Performance Management of a System-on-Chip (SoC) aims to deliver the maximum designed performance while simultaneously optimizing power consumption for targeted software workloads. In this context, the Operating System (OS) is the entity that has the most comprehensive view of the running and runnable workloads. Thus, the OS has evolved over time as the primary entity driving and controlling power and performance management along with system control functionality.

OS-based Power Management paradigms and their drawbacks

Software Complexity

OS-based system control and power management has led to complexities in the software stack which have affected its maintainability, portability and security. The race for differentiation among hardware vendors has led to widely different hardware designs requiring specialized software support, which are potentially difficult for a single generic OS kernel to support. This poses a challenge for OS developers who strive to create and maintain a single, generic kernel. The differentiation also poses problems for SoC vendors, who must provide dedicated software for each platform that they must support. Hence many platforms end up maintaining out-of-tree kernel code. This poses challenges in OS upgrades, which in-turn leads to faster obsolescence because the latest software features and security upgrades become difficult to deploy. Additionally, vendors who want to support multiple OS variants on each platform need to create, maintain and debug separate software stacks for each OS with no code commonality.

System-on-Chips may comprise multiple PE clusters, each cluster running a separate OS Instance. In such a scenario any single OS instance may not have complete control and view of the platform. This is true of virtualized systems as well, where there may be multiple OS hosted as Virtual Machines. In such a scenario, the traditional OS-based control of the platform’s system and power management leads to software which is either too bespoke for a generic kernel to support or which compromises functionality.

Security vulnerability

Maintaining all the system and power controls within the domain of the OS kernel has another side-effect. It exposes the system to security attacks which may result in denial of service, extraction of secrets, or other exploits. Such attacks generally work by attempting to transition the system into unstable states by exploiting the system controls exposed to the OS kernel. As a mitigation, some platforms have migrated system controls away to the Secure Trusted world. However, there is no common mechanism, at least in the Linux kernel, that works for all platforms with such a design.

Response time limitations

As SoCs become more powerful, it may not always be feasible to design power supplies for worst case electrical requirements or design the platform chassis for worst case thermal requirements. Such designs require a central entity to regulate platform power and performance according to the electrical and thermal environment and tolerances. This entity must be capable of providing a faster response time than OS kernels.

Delegation-based approach to Power Management

The above limitations of OS-centric power and performance management leads to an obvious conclusion: the Arm ecosystem needs to adopt a delegation-based approach to power and performance management. This approach exploits a judicious division of power, performance and system control responsibilities between the OS and the platform firmware.

In the delegation-based approach, an entity that can perform the role of the platform firmware is the Arm System Control Processor (SCP) firmware. The SCP firmware can be customized for differentiation, thereby allowing the OS kernel to remain generic. The OS continues to play a primary role in choosing power and performance levels. The firmware validates the OS requests according to overall system policies and constraints, and programs the platform hardware to operate at the selected level.

Benefits to OS developers and SoC Vendors

The delegation-based approach to power management and system control architecture is resistant to security attacks and can be deployed on generic OS kernels without modifications to the latter. The SCP-Firmware can potentially support multiple Operating System variants on the same platform, thereby lowering efforts through firmware commonality. This eases development, debug and maintenance costs for the OS developers and reduces time to market for the SoC vendors.

Standard Interface between OS and Platform Firmware

SCMI overview diagram

A key requirement of the delegation-based approach is a standard interface between the platform firmware and the OS kernel. The Arm System Control and Management Interface (SCMI) specification provides this standardized interface, allowing a generic OS kernel to communicate with any platform firmware that complies to this specification. It also enables a common firmware that can be deployed across multiple Operating Systems.

More Information on SCMI

Our newly published white paper provides a high-level overview of the SCMI specification and the benefits it offers to OS developers and SoC vendors in enabling a generic OS kernel that works across a variety of SoC designs. The whitepaper provides details of how a platform design can leverage SCMI to provide the benefits of maintainability, safety and security while still providing differentiation.

Download SCMI White Paper

Anonymous
Architectures and Processors blog
  • Scalable Matrix Extension: Expanding the Arm Intrinsics Search Engine

    Chris Walsh
    Chris Walsh
    Arm is pleased to announce that the Arm Intrinsics Search Engine has been updated to include the Scalable Matrix Extension (SME) intrinsics, including both SME and SME2 intrinsics.
    • October 3, 2025
  • Arm A-Profile Architecture developments 2025

    Martin Weidmann
    Martin Weidmann
    Each year, Arm publishes updates to the A-Profile architecture alongside full Instruction Set and System Register documentation. In 2025, the update is Armv9.7-A.
    • October 2, 2025
  • When a barrier does not block: The pitfalls of partial order

    Wathsala Vithanage
    Wathsala Vithanage
    Acquire fences aren’t always enough. See how LDAPR exposed unsafe interleavings and what we did to patch the problem.
    • September 15, 2025