1SCP-firmware - version 2.11 2=========================== 3 4Copyright (c) 2011-2022, Arm Limited. All rights reserved. 5 6References 7---------- 8 9[1] Power Control System Architecture - DEN0050C (Please contact Arm directly to 10obtain a copy of this document) 11 12[2] [System Control and Management Interface - DEN0056A](https://developer.arm.com/documentation/den0056/d/) 13 14[3] Power Policy Unit - DEN0051C (Please contact Arm directly to obtain a copy 15of this document) 16 17[4] [System Guidance](https://developer.arm.com/products/system-design/system-guidance) 18 19Introduction 20------------ 21 22There is a strong trend in the industry to provide microcontrollers in systems 23to abstract various power, or other system management tasks, away from 24Application Processors (APs). The Power Control System Architecture (PCSA) [1] 25describes how systems can be built following this approach. 26 27The PCSA defines the concept of the System Control Processor (SCP), a dedicated 28processor that is used to abstract power and system management tasks away from 29application processors. 30 31Similar to the SCP, the Manageability Control Processor (MCP) follows the same 32approach with the goal of providing a management entry-point to the System on 33Chip (SoC) where manageability is required, such as on a SoC targeting servers. 34 35SCP-firmware provides a software reference implementation for the System Control 36Processor (SCP) and Manageability Control Processor (MCP) components found in 37several Arm Compute Sub-Systems. 38 39Functionality 40------------- 41 42- Initialization of the system to enable application core boot 43- Runtime services: 44 - Power domain management 45 - System power management 46 - Performance domain management (Dynamic Voltage and Frequency Scaling) 47 - Clock management 48 - Sensor management 49 - Reset domain management 50 - Voltage domain management 51- System Control and Management Interface (SCMI, platform-side) 52- Support for the GNU Arm Embedded, Arm Compiler 6 and LLVM toolchains 53- Support for platforms with several control processors 54- Interactive debugging (with Command Line Interface) 55 56Platforms 57--------- 58 59Various builds of the release have been tested on the following ARM Fixed 60Virtual Platforms (FVPs or boards where possible): 61 62- System Guidance for Mobile platform SGM-775 (Version 11.3 Build 42) 63- System Guidance for Infrastruture SGI-575 (Version 11.3 Build 42) 64- Neoverse N1 reference design (Version 11.6 Build 45) 65- System Guidance for Mobile platform SGM-776 (Version 11.6 Build 45) 66- Juno reference design (Please contact Arm directly to obtain the Juno FVP) 67- RD-N1-Edge Dual-Chip reference design (Please contact Arm directly to obtain the 68 RdN1EdgeX2 FVP) 69- RD-V1 reference design (Please contact Arm directly to obtain the RD_V1 FVP) 70- RD-V1-MC reference design (Please contact Arm directly to obtain the RD_V1_Multichip FVP) 71- Renesas R-Car platform 72- Total Compute (tc0) platform (Please contact Arm directly to obtain the TC0 FVP) 73- Morello (Please see Arm's Ecosystem FVPs Developer page) 74- Total Compute (tc1) platform (Please contact Arm directly to obtain the TC1 FVP) 75 76License 77------- 78 79The software is provided under a [BSD-3-Clause license](https://spdx.org/licenses/BSD-3-Clause.html). 80 81The license for CMock can be found in contrib/cmock/git/LICENSE.txt. 82 83The license for unity framework can be found in contrib/cmock/git/vendor/unity/LICENSE.txt. 84 85Getting started 86--------------- 87 88See user_guide.md for instructions on how to get, install, build and use 89SCP-firmware on supported Arm platforms. 90 91CMake 92----- 93 94SCP-firmware now supports building with CMake. See doc/cmake_readme.md for 95details. 96 97Feedback and Support 98-------------------- 99 100Arm welcomes any feedback on SCP-firmware. Please contact the maintainers (see 101maintainers.md). 102 103To request support please contact Arm by email at support@arm.com. Arm licensees 104may also contact Arm via their partner managers. 105 106Security issues reporting 107------------------------- 108 109To report any security issue please contact Arm by email at arm-security@arm.com. 110 111More details can be found at [Arm Developer website](https://developer.arm.com/support/arm-security-updates/report-security-vulnerabilities). 112