GithubHelp home page GithubHelp logo

qpc-database / scp-firmware Goto Github PK

View Code? Open in Web Editor NEW

This project forked from arm-software/scp-firmware

1.0 1.0 0.0 7.44 MB

System Control Processor (SCP) firmware

License: Other

Makefile 1.54% Assembly 0.75% C 92.30% Python 1.22% Dockerfile 0.06% Shell 0.01% Ruby 0.01% CMake 4.12%

scp-firmware's Introduction

SCP-firmware - version 2.8

Copyright (c) 2011-2021, Arm Limited. All rights reserved.

References

[1] Power Control System Architecture - DEN0050C (Please contact Arm directly to obtain a copy of this document)

[2] System Control and Management Interface - DEN0056A

[3] Power Policy Unit - DEN0051C (Please contact Arm directly to obtain a copy of this document)

[4] System Guidance

Introduction

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) [1] 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.

Functionality

  • 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
    • Reset domain management
    • Voltage domain management
  • System Control and Management Interface (SCMI, platform-side)
  • Support for the GNU Arm Embedded, Arm Compiler 6 and LLVM toolchains
  • Support for platforms with several control processors
  • Interactive debugging (with Command Line Interface)

Platforms

Various builds of the release have been tested on the following ARM Fixed Virtual Platforms (FVPs or boards where possible):

  • System Guidance for Mobile platform SGM-775 (Version 11.3 Build 42)
  • System Guidance for Infrastruture SGI-575 (Version 11.3 Build 42)
  • Neoverse N1 reference design (Version 11.6 Build 45)
  • System Guidance for Mobile platform SGM-776 (Version 11.6 Build 45)
  • Juno reference design (Please contact Arm directly to obtain the Juno FVP)
  • RD-N1-Edge Dual-Chip reference design (Please contact Arm directly to obtain the RdN1EdgeX2 FVP)
  • RD-V1 reference design (Please contact Arm directly to obtain the RD_V1 FVP)
  • RD-V1-MC reference design (Please contact Arm directly to obtain the RD_V1_Multichip FVP)
  • Renesas R-Car platform
  • Total Compute (tc0) platform (Please contact Arm directly to obtain the TC0 FVP)
  • Morello (Please see Arm's Ecosystem FVPs Developer page)

License

The software is provided under a BSD-3-Clause license.

Getting started

See user_guide.md for instructions on how to get, install, build and use SCP-firmware on supported Arm platforms.

CMake

SCP-firmware now supports building with CMake. See doc/cmake_readme.md for details.

Feedback and Support

Arm welcomes any feedback on SCP-firmware. Please contact the maintainers (see maintainers.md).

To request support please contact Arm by email at [email protected]. Arm licensees may also contact Arm via their partner managers.

scp-firmware's People

Contributors

adiang01 avatar ahmedimbabygadallah avatar amitdanielkachhap avatar anukou avatar arnoldgb-arm avatar brett-warren-arm avatar chandnich avatar cjkay avatar elieva avatar etienne-lms avatar girishpathak avatar jagadeeshujja avatar jimqui01 avatar joel-goddard-arm avatar katvin01 avatar leandro-arm avatar lukaszluba-arm avatar manojkumar-arm avatar muro8811 avatar nicola-mazzucato-arm avatar nroyer-baylibre avatar pietos01-arm avatar pranav-madhu avatar raphaelgault avatar ronald-cron-arm avatar sevenarth avatar shriram-k-arm avatar tarek-arm avatar uarif1 avatar vijayenthiran-arm avatar

Stargazers

 avatar

Watchers

 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.