SCP Message Interface v1 2 DUI0922G en
SCP Message Interface v1 2 DUI0922G en
Version: 1.2
Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved.
ARM DUI 0922G (ID052516)
ARM Compute Subsystem SCP
Message Interface Protocols
Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved.
Release Information
Change history
Proprietary Notice
This document is protected by copyright and other related rights and the practice or implementation of the information
contained in this document may be protected by one or more patents or pending patent applications. No part of this
document may be reproduced in any form by any means without the express prior written permission of ARM. No
license, express or implied, by estoppel or otherwise to any intellectual property rights is granted by this document
unless specifically stated.
Your access to the information in this document is conditional upon your acceptance that you will not use or permit
others to use the information for the purposes of determining whether implementations infringe any third party patents.
TO THE EXTENT NOT PROHIBITED BY LAW, IN NO EVENT WILL ARM BE LIABLE FOR ANY DAMAGES,
INCLUDING WITHOUT LIMITATION ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, PUNITIVE, OR
CONSEQUENTIAL DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY,
ARISING OUT OF ANY USE OF THIS DOCUMENT, EVEN IF ARM HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
This document consists solely of commercial items. You shall be responsible for ensuring that any use, duplication or
disclosure of this document complies fully with any relevant export laws and regulations to assure that this document
or any portion thereof is not exported, directly or indirectly, in violation of such export laws. Use of the word “partner”
in reference to ARM’s customers is not intended to create or refer to any partnership relationship with any other
company. ARM may make changes to this document at any time and without notice.
If any of the provisions contained in these terms conflict with any of the provisions of any signed written agreement
covering this document with ARM, then the signed written agreement prevails over and supersedes the conflicting
provisions of these terms.
Words and logos marked with ® or ™ are registered trademarks or trademarks of ARM Limited or its affiliates in the
EU and/or elsewhere. All rights reserved. Other brands and names mentioned in this document may be the trademarks
of their respective owners. Please follow ARM’s trademark usage guidelines at
http://www.arm.com/about/trademarks/guidelines/index.php
Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. ii
ID052516 Non-Confidential
ARM Limited. Company 02557590 registered in England.
LES-PRE-20349
Confidentiality Status
This document is Non-Confidential. The right to use, copy and disclose this document may be subject to license
restrictions in accordance with the terms of the agreement entered into by ARM and the party that ARM delivered this
document to.
Product Status
Web Address
http://www.arm.com
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. iii
ID052516 Non-Confidential
Contents
ARM Compute Subsystem SCP Message Interface
Protocols
Preface
About this book .......................................................................................................... vii
Feedback .................................................................................................................... ix
Chapter 1 Introduction
1.1 The System Control Processor ............................................................................... 1-2
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. iv
ID052516 Non-Confidential
Contents
Appendix B Revisions
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. v
ID052516 Non-Confidential
Preface
This preface introduces the ARM® Compute Subsystem SCP Messaging Interface Protocols. It
contains the following sections:
• About this book on page vii
• Feedback on page ix.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. vi
ID052516 Non-Confidential
Preface
This book describes the System Control and Power Interface (SCPI) and Boot Over MHU
(BOM) Message Interface Protocols that can be used to pass messages between the SCP and the
Application Processor (AP) on ARM CSS-based platforms. It also describes the Message
Handling Unit (MHU) Transport Layer (MTL), a low-level protocol that handles
communication between sender and receiver.
Intended audience
This book has been written for software developers who are interacting with an SCP within an
ARM Compute Subsystem, from a firmware or operating system level. For example, for the
purposes of power control.
Chapter 1 Introduction
Read this chapter for an introduction to the ARM CSS System Control Processor.
Appendix B Revisions
Read this appendix for a list of changes to the documentation.
Glossary
The ARM® Glossary is a list of terms used in ARM documentation, together with definitions for
those terms. The ARM® Glossary does not contain terms that are industry standard unless the
ARM meaning differs from the generally accepted meaning.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. vii
ID052516 Non-Confidential
Preface
Typographical conventions
Typographical conventions
Style Purpose
bold Highlights interface elements, such as menu names. Denotes signal names. Also used for terms in descriptive
lists, where appropriate.
monospace Denotes text that you can enter at the keyboard, such as commands, file and program names, and source code.
monospace Denotes a permitted abbreviation for a command or option. You can enter the underlined text instead of the full
command or option name.
monospace italic Denotes arguments to monospace text where the argument is to be replaced by a specific value.
monospace bold Denotes language keywords when used outside example code.
<and> Encloses replaceable terms for assembler syntax where they appear in code or code fragments. For example:
MRC p15, 0 <Rd>, <CRn>, <CRm>, <Opcode_2>
SMALL CAPITALS Used in body text for a few terms that have specific technical meanings, that are defined in the ARM® Glossary.
For example, IMPLEMENTATION DEFINED, IMPLEMENTATION SPECIFIC, UNKNOWN, and UNPREDICTABLE.
Additional reading
ARM publications
This book contains information that is specific to this product. See the following documents for
other relevant information:
• Juno ARM® Development Platform SoC Technical Reference Manual (ARM DDI 0515).
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. viii
ID052516 Non-Confidential
Preface
Feedback
ARM welcomes feedback on this product and its documentation.
If you have any comments or suggestions about this product, contact your supplier and give:
• The product name.
• The product revision or version.
• An explanation with as much information as you can provide. Include symptoms and
diagnostic procedures if appropriate.
Feedback on content
Note
ARM tests the PDF only in Adobe Acrobat and Acrobat Reader, and cannot guarantee the
quality of the represented document when used with any other PDF reader.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. ix
ID052516 Non-Confidential
Chapter 1
Introduction
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 1-1
ID052516 Non-Confidential
Introduction
• Power state management for the power regions within the SoC.
• Handling hardware wakeup requests from components such as timers and interrupts.
• Responsible for maintaining and enforcing consistency between device states within the
system.
The services that are provided by the SCP are exposed to the AP software using message
interfaces.
These message interfaces use areas of shared memory and the CSS MHU peripheral, which is
used as a messaging signaling mechanism.
The MHU provides a mechanism to assert interrupt signals between the SCP and the application
processor.
Figure 1-1 shows a diagram of the communication between the SCP and AP.
Application
Message System Control
processor
Handling Unit Processor (SCP)
(AP)
(MHU)
Memory
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 1-2
ID052516 Non-Confidential
Chapter 2
CSS Message Handling Unit (MHU) transport layer
The following topics describe the MHU Transport Layer (MTL) protocol, as used in an ARM
CSS:
• Physical and virtual channels on page 2-2.
• Communication flow on page 2-4.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 2-1
ID052516 Non-Confidential
CSS Message Handling Unit (MHU) transport layer
These are:
• Physical channels.
• Virtual channels on page 2-3.
The CSS MHU peripheral provides physical channels that are used for communication between
the SCP and the AP. These channels are called physical channels because their implementation
is fixed in hardware. Each physical channel is unidirectional (SCP to AP or AP to SCP) and is
either fully accessible or restricted to Secure access only.
The exact number of available physical channels, and their properties, varies depending on the
specific CSS implementation.
• An interrupt line to the receiver that the channel direction defines. For example, if the
channel direction is “AP to SCP” the interrupt line is connected to the SCP.
The SCP regards each bit in the STAT register as a slot that can be mapped to a virtual channel.
Note
• Slot 31 is reserved because the MHU hardware uses bit [31] to indicate a Non-secure
access attempt.
The state of the slot bits in the STAT register act as a signaling method between the sender and
receiver. If the sender is to transmit a message across a virtual channel, it must first check the
state of the slot bit associated with that channel. If the slot bit is clear, it is safe for the sender to
initiate a new communication. If the bit is set, the associated virtual channel is in use. The sender
must wait for the slot to clear before it writes a new message.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 2-2
ID052516 Non-Confidential
CSS Message Handling Unit (MHU) transport layer
Virtual channels are a software construct that are designed to add flexibility to the
communication system.
The size and location of the shared memory region are implementation defined. However, the
region must be readable by both the SCP and the AP. If the protocol associated with the virtual
channel is bidirectional, the region must also be writable by both the SCP and the AP. If suitable
arbitration is implemented in platform software, a single region of memory can also be shared
between multiple virtual channels.
Figure 2-1 shows a physical channel, represented by the SET, CLEAR, and STATUS registers.
The physical channel is supporting three virtual channels which occupy slots 0, 1, and 30. Three
regions of shared memory are reserved, one per virtual channel.
The independent virtual channels share the single receiver-side interrupt line of the physical
channel that they are associated with. Different entities within the same software domain can
access the virtual channels concurrently. This shared access enables greater flexibility.
Interrupt line
31 | 30 |…. STATUS ……| 1 | 0
to receiver.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 2-3
ID052516 Non-Confidential
CSS Message Handling Unit (MHU) transport layer
1. The sender polls STAT [0] to determine if the virtual channel associated with slot 0 is
ready to accept a message. The sender must wait until STAT[0] becomes clear to ensure
that any previous commands have been received and processed.
2. The sender writes a message to the shared memory area of the receiver. The content and
size of the message are protocol-specific. The sender must then ensure that the written
data is visible to the receiver. This visibility is achieved, where appropriate, though the
use of barriers, or their equivalent, before proceeding to the next step.
3. The sender writes 1 to SET [0]. This write signals to the receiver that a new message is
pending on the virtual channel for slot 0.
These steps cause an interrupt to be asserted at the receiving end of the physical channel. This
interrupt triggers the flow that is described in Receiving a message.
1. An interrupt is raised at the receiving end of the physical channel. The recipient reads the
STAT register to determine which slot bit has been set, and which virtual channel has a
pending message.
2. The recipient can now access the message data in the shared memory area that is
associated with the virtual channel. This message data is valid until the channel is next
released. This is described in the following step. When the channel is released, the next
incoming message overwrites the existing data in the shared memory area.
ARM recommends that the recipient creates a copy of the message data outside of the
shared memory area so that the message can be processed asynchronously and the channel
can be released as soon as possible.
3. The receiver writes 1 to CLEAR[0]. The write clears the corresponding slot bit in the
STAT register. This action indicates to the sender that the command was successfully
received, though not necessarily processed, and that the virtual channel is ready to accept
a new message.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 2-4
ID052516 Non-Confidential
Chapter 3
CSS System Control and Power Interface (SCPI)
The SCPI is one of the primary interfaces to the SCP in an ARM CSS-based platform. It is used
to access many of the services that are exposed to the AP. The SCP is expected to be idle and
waiting for SCPI commands for most of the time after the system boot process completes.
An SCPI message consists of a compulsory header and an optional payload. The header and
payload are written into the shared memory area that is associated with the virtual channel upon
which the message is transmitted.
Either the SCP or the AP can send a message at any point in time. SCPI communication is
asynchronous and bidirectional.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-1
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
[31:25] RESERVED -
[63:32] Status Status indicating the result of a command. The status values are:
0 SCPI_OK - Success
1 SCPI_E_PARAM – Invalid parameter(s)
2 SCPI_E_ALIGN – Invalid alignment
3 SCPI_E_SIZE – Invalid size
4 SCPI_E_HANDLER – Invalid handler or callback
5 SCPI_E_ACCESS – Invalid access or permission denied
6 SCPI_E_RANGE – Value out of range
7 SCPI_E_TIMEOUT – Timeout has occurred
8 SCPI_E_NOMEM – Invalid memory area or pointer
9 SCPI_E_PWRSTATE – Invalid power state
10 SCPI_E_SUPPORT – Feature not supported or disabled
11 SCPI_E_DEVICE– Device error
12 SCPI_E_BUSY – Device is busy
13 SCPI_E_OS - RTOS error occurred
14 SCPI_E_DATA - Unexpected or invalid data received
15 SCPI_E_STATE - Invalid or unattainable state requested
The status field value is only relevant when the AP is receiving a message
from the SCP. Any status value set by the AP is ignored by the SCP.
The header is written into the first 64 bits of the shared memory area. The payload follows
immediately afterwards. The SCPI protocol enforces a maximum payload size of 512 bytes. The
protocol uses bits[24:16] to store the size value. However, there can also be an implementation
defined limit on the payload size that is lower than 512 bytes. In this case, where a response is
specified, exceeding the maximum payload size results in a response of SCPI_E_SIZE from the
recipient.
For commands that elicit a response from the recipient, the Command ID and Set ID fields
remain the same in the response, except for the size and the status. The Payload Size field (and
Sender ID field if appropriate) must be updated in the response. If the SCP is sending the
response to the AP, then the Status field is also updated.
The Sender ID field is a field that can be used to associate responses with requests. When the
AP sends a message to the SCP and sets a Sender ID value, the SCP includes the Sender ID
value in the response to the AP. This enables platform software on the AP to differentiate the
response from other incoming messages.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-2
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
If the SCP sends a message to the AP that is not a response to a command, for example, a
periodic temperature sensor reading, it identifies itself with a Sender ID of 0. However, the SCPI
protocol does not explicitly reserve ID 0 for this purpose. AP software is free to leave the Sender
ID as 0 for its commands if it does not require this functionality.
Only one software entity (OS, firmware, or bootloader) owns a virtual channel at any point in
time.
The owner of the channel is responsible for arbitration between multiple requests, for example,
from cores, or threads, through any lock mechanism appropriate.
3.1.2 Endianness
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-3
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
At the end of the SCP boot sequence, when the SCP RAM Firmware image has been transferred,
the SCP must leave the BL0 Firmware executing from ROM, and pass control to SCP RAM
Firmware, executing from SRAM. The SCP uses the Ready command to inform the AP that it
can now accept requests to prevent application cores from sending SCPI requests before the
SCP RAM Firmware is ready.
Note
The SCP initiates this command.
Header details
Command ID 0x01
Set ID 0 (Standard)
AP to SCP payload
None.
SCP to AP payload
None.
This command describes the SCP capabilities. AP software can use this command to query the
supported version of the SCPI protocol, the event definitions, enabled command sets, and
enabled commands.
Header details
Command ID 0x02
Set ID 0 (Standard)
AP to SCP payload
None.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-4
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
SCP to AP payload
Offset Description
8 Firmware version
12 Commands enabled 0
16 Commands enabled 1
20 Commands enabled 2
24 Commands enabled 3
[15:0] SCPI Minor version Implemented minor version of the SCPI protocol. Changes in
the Minor version number do not break compatibility with
previous versions based on the same Major version number.
[31:16] SCPI Major version Implemented major version of the SCPI protocol. Changes in
the Major version number can break compatibility with previous
versions.
[8:0] AP Payload Size The maximum size for an SCPI payload in the AP to SCP
Limit direction.
[15:9] RESERVED -
[24:16] SCP Payload Size The maximum size for an SCPI payload in the SCP to AP
Limit direction.
[31:25] RESERVED -
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-5
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
[0] Extended Set When a platform extends the standard SCPI command set by
Enabled implementing command IDs 0x80 to 0xFF, this bit is set to 1.
0 Disabled
1 Enabled
[31:1] Standard Command Bitmap for the standard commands available (IDs 0x01 to 0x1F).
Set 0 Disabled
1 Enabled
[31:0] Standard Command Bitmap for the standard commands available (IDs 0x20 to 0x3F).
Set 0 Disabled
1 Enabled
[31:0] Standard Command Bitmap for the standard commands available (IDs 0x40 to 0x5F).
Set 0 Disabled
1 Enabled
[31:0] Standard Command Bitmap for the standard commands available (IDs 0x60 to 0x7F).
Set 0 Disabled
1 Enabled
This command is used by the AP to change the power state of clusters, and the Compute
Subsystem (CSS). The values of the Cluster ID and CPU ID fields depend on the particular CSS
hardware configuration that has been implemented. The number of clusters and cores can vary.
The SCP does not reply to this command to avoid generating interrupts which must be handled
by AP cores. To do so can interfere with a requested power state transition.
This command is processed from the lowest level domain upwards (Core® Cluster® CSS) and
the SCP automatically acts to enforce any power state dependencies. For example, if a request
to turn on a core is received, and the cluster that the core belongs to is powered off, the SCP will
power on that cluster automatically, regardless of the requested cluster Power State.
The cluster Power State is only used when the last powered core in a cluster is being powered
off. This is so that the SCP can determine whether the intent is to keep the cluster ON or to
switch it to one of the available low-power modes. Similarly, the CSS Power State parameter is
only processed when the last cluster is being powered off.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-6
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
Note
During a power down sequence, the core being powered off must enter WFI to complete the
sequence. Failing to enter WFI leads to undefined behavior. This behavior is a hardware
restriction that is imposed to ensure that the core has reached a consistent state and that any
transactions have been completed.
Header details
Command ID 0x03
Set ID 0 (Standard)
AP to SCP payload
Offset Description
[3:0] CPU ID A number which identifies the core in its cluster. This field
supports up to eight cores in a cluster. The actual number of
cores is platform-specific and can vary between clusters in the
same system.
[7:4] Cluster ID Cluster ID is a number which identifies the cluster in the system.
[31:20] RESERVED -
SCP to AP payload
None.
Returns the current state of each cluster and its cores in the CSS. The power state of the CSS is
not returned. The implication is that it is ON if an AP core was able to send the command to the
SCP.
There is no lock mechanism preventing an asynchronous wake-up event from happening while
the SCP is processing this command.
The size of the payload is variable depending on the number of clusters that the system supports.
The AP software must read the size field of the SCP to AP header, and handle the payload
appropriately.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-7
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
Header details
Command ID 0x04
Set ID 0 (Standard)
AP to SCP payload
None.
SCP to AP payload
Offset Description
0 Power State
Power state
The payload returns one or more copies of this structure. The actual count depends on the
number of clusters in the system.
[15:8] CPU Power State Current power state of each core belonging to Cluster ID. Each
bit corresponds to a core, with bit 0 assigned to CPU 0.
This command sets the power state but acts at a system level.
All cores must be OFF (apart from the last core sending the command) before the SCP can shut
down, reboot, or reset the system.
If there is more than one core still running, the SCP waits for an implementation defined time
before abandoning the request. It assumes that the system was not properly prepared for
shutdown.
Header details
Command ID 0x05
Set ID 0 (Standard).
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-8
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
AP to SCP payload
Offset Description
0 System State
SCP to AP payload
None.
The SCP uses this timer when the target core is powered down.
If the timestamp is in the past when the core is being powered down, the core is reset. This timer
is a one-shot timer and must be re-enabled after being triggered.
If the target core is powered down and a wake-up occurs, for example, an IRQ interrupt, before
the timer expires, the timer is canceled. The timestamp is based on the generic counters running
at the REFCLK rate, that are shared between the SCP and AP.
Header details
Command ID 0x06
Set ID 0 (Standard)
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-9
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
AP to SCP payload
Offset Description
0 Timestamp (LSB)
4 Timestamp (MSB)
8 CPU identifier
[31:0] Timestamp (LSB) Bytes 0-3 of the timestamp (in REFCLK ticks).
[31:0] Timestamp (MSB) Bytes 4-7 of the timestamp (in REFCLK ticks).
[3:0] CPU ID CPU ID is a number which identifies the core in its cluster.
[7:4] Cluster ID Cluster ID is a number which identifies the cluster in the system.
SCP to AP payload
None.
This command cancels any outstanding timer that can wake a given core.
If this command is received before the target core is powered down, it clears the last Set CPU
Timer request. No timer will be used on the next power down request.
Header details
Command ID 0x07
Set ID 0 (Standard)
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-10
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
AP to SCP payload
Offset Description
0 CPU identifier
[3:0] CPU ID CPU ID is a number which identifies the core in its cluster.
[7:4] Cluster ID Cluster ID is a number which identifies the cluster in the system.
SCP to AP payload
None.
Returns the number of voltage domains with DVFS support in the system.
Header details
Command ID 0x08
Set ID 0 (Standard)
AP to SCP payload
None.
SCP to AP payload
Offset Description
0 Voltage domains
The size of this command depends on the number of Operating Performance Points (OPPs), or
Operating Points supported by the voltage domain. The Frequency and Voltage tuple repeats for
the number of operating points that are defined on the Header.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-11
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
Header details
Command ID 0x09
Set ID 0 (Standard)
AP to SCP payload
Offset Description
0 Voltage Domain ID
SCP to AP payload
Offset Description
0 Domain information
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-12
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
Operating Point Index is an index (starting from 0) to the Operating Point List. See, Get DVFS
Info on page 3-11 and Get DVFS Capability on page 3-11.
Header details
Command ID 0x0A
Set ID 0 (Standard)
AP to SCP payload
Offset Description
[15:8] Operating Point An index in the Operating Point List. See, Get DVFS Info on
Index page 3-11.
SCP to AP payload
None.
Returns the current Operating Point for the given Voltage Domain. This command returns only
an index (starting from 0) to the Operating Point List. See, Get DVFS Info on page 3-11.
Header details
Command ID 0x0B
Set ID 0 (Standard)
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-13
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
AP to SCP payload
Offset Description
0 Voltage Domain
SCP to AP payload
Offset Description
0 Index
[7:0] Operating Point An index in the Operating Point List. See, Get DVFS Info on
Index page 3-11.
This command is used to return the DVFS statistics for a given voltage domain. The payload
contains a header followed by a 64-bit entry for each operating point.
Note
• The SCP to AP payload size of this command depends on the number of operating points
that the given voltage domain supports.
• After sending the response message, the SCP resets its statistics counters for the given
domain and will begin gathering fresh data.
Header details
Command ID 0x0C
Set ID 0 (Standard)
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-14
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
AP to SCP payload
Offset Description
0 Voltage Domain
SCP to AP
Offset Description
4 Switch Count
24 Residency[n] (LSB)
28 Residency[n] (MSB)
[7:0] Number of Number of operating points that this voltage domain supports.
Operating Points
[31:8] RESERVED -
[31:0] Start Timestamp This timestamp indicates when the SCP started collecting the
(LSB) data.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-15
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
[31:0] Start Timestamp This timestamp indicates when the SCP started collecting the
(MSB) data.
[31:0] Current Timestamp This timestamp indicates the last time the SCP collected the
(LSB) data, giving the AP the time period that is associated with the
statistics.
[31:0] Current Timestamp This timestamp indicates the last time the SCP collected the
(MSB) data, giving the AP the time period that is associated with the
statistics.
[31:0] Residency (LSB) The duration (in REFCLK ticks) that the voltage domain spent
in the DVFS operating point with ID = n.
[31:0] Residency (MSB) The duration (in REFCLK ticks) that the voltage domain spent
in the DVFS operating point with ID = n.
Returns the number of clocks in the system. The identifiers for the available clock devices are
contiguous and in the range 0-(n-1), where n is the number of clocks that this command returns.
Header details
Command ID 0x0D
Set ID 0 (Standard)
AP to SCP payload
None.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-16
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
SCP to AP
Offset Description
0 Clocks
Header details
Command ID 0x0E
Set ID 0 (Standard)
AP to SCP payload
Offset Description
0 Clock ID
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-17
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
SCP to AP payload
Offset Description
0 Clock ID
2 Flags
4 Minimum rate
8 Maximum rate
12 Clock name
[0] Readable When 1, indicates that the SCP accepts a Get request.
[1] Writable When 1, indicates that the SCP accepts a Set request.
[15:2] RESERVED -
Name Description
Header details
Command ID 0x0F
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-18
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
Set ID 0 (Standard)
AP to SCP payload
Offset Description
0 Clock ID
4 Value
[31:16] RESERVED -
SCP to AP payload
None.
Header details
Command ID 0x10
Set ID 0 (Standard)
AP to SCP payload
Offset Description
0 Clock ID
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-19
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
SCP to AP payload
Offset Description
0 Value
Returns the number of manageable power supplies or voltage regulators in the system. The
identifiers for the available power supplies are contiguous and in the range 0-(n-1), where n is
the number of power supplies that this command returns.
Header details
Command ID 0x11
Set ID 0 (Standard)
AP to SCP payload
None.
SCP to AP payload
Offset Description
0 Power supplies
Header details
Command ID 0x12
Set ID 0 (Standard)
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-20
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
AP to SCP payload
Offset Description
0 Power Supply ID
SCP to AP payload
Offset Description
0 Power Supply ID
2 Flags
4 Minimum voltage
8 Maximum voltage
[15:2] RESERVED -
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-21
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
Name Description
Note
If the device supports being switched off, setting the voltage value to 0 disables the power
supply.
Header details
Command ID 0x13
Set ID 0 (Standard)
AP to SCP payload
Offset Description
0 Power Supply ID
4 Voltage
[31:16] RESERVED -
SCP to AP payload
None.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-22
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
Header details
Command ID 0x14
Set ID 0 (Standard)
AP to SCP payload
Offset Description
0 Power Supply ID
SCP to AP payload
Offset Description
0 Voltage
Returns the number of sensor devices in the system. For example, sensors for temperature,
voltage, and power. The identifiers for the available sensors are contiguous and in the range
0-(n-1), where n is the number of sensors that this command returns.
Header details
Command ID 0x15
Set ID 0 (Standard)
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-23
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
AP to SCP payload
None.
SCP to AP payload
Offset Description
0 Sensors
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-24
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
Header details
Command ID 0x16
Set ID 0 (Standard)
AP to SCP payload
Offset Description
0 Sensor ID
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-25
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
SCP to AP payload
Offset Description
0 Sensor ID
2 Sensor class
3 Sensor triggers
4 Sensor name
[7:0] Trigger types Indicates the types of trigger that the sensor supports:
0 None supported
1 Periodic trigger
2 Bounds trigger
3 Bounds and periodic (not concurrently)
Name Description
Header details
Command ID 0x17
Set ID 0 (Standard)
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-26
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
AP to SCP payload
Offset Description
0 Sensor ID
SCP to AP payload
Offset Description
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-27
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
Configures automatic periodic reading of the sensor. The SCP sends an Async Sensor Value
command when the sensor takes a reading.
Note
The periods a sensor supports are sensor and platform specific.
Periodic sensor readings and sensor bounds are mutually exclusive at the level of individual
sensors. It is therefore not possible to enable both at once for a given sensor. It is possible to
have both types of reading enabled within the system, if the previous, per-sensor constraint is
respected.
The type of asynchronous sensor reading that is enabled for a given sensor is the last type that
was requested. For example, enabling periodic readings and then enabling sensor bounds result
in only bounds-based readings from the sensor.
Header details
Command ID 0x18
Set ID 0 (Standard)
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-28
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
AP to SCP payload
Offset Description
0 Sensor ID
2 Recurrence
4 Period
[15:0] Recurrence Specifies how many periodic readings are taken before
stopping. The following values are special:
0x0000 Stop sensor readings
0xFFFF Continuous sensor readings
SCP to AP payload
None.
Configures the upper and lower bounds on a sensor, and a set of trigger conditions that generate
an Async Sensor Value command if their conditions are satisfied.
Note
The sensor device must support self-monitoring or limits because the SCP does not poll the
sensor to determine if the trigger conditions have been met.
A sensor advertises its support for bounds-based readings when its configuration is queried. See,
Get Sensor Info on page 3-25 for more information.
If a sensor is configured using the Config Sensor Bounds command by mistake, when it does not
support bounds, the trigger conditions are never met. No Async Sensor Value commands are
issued for the misconfigured sensor.
Periodic sensor readings and sensor bounds are mutually exclusive at the level of individual
sensors. It is not possible to enable both at once for a given sensor. It is possible to enable both
types of reading within the system, if any previous per-sensor constraint is respected.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-29
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
The type of asynchronous sensor reading that is enabled for a given sensor is the last type that
is requested. For example, if periodic readings and then sensor bounds are enabled, only
bounds-based readings from the sensor are taken.
Header details
Command ID 0x19
Set ID 0 (Standard)
AP to SCP payload
Offset Description
0 Sensor ID.
2 Triggers.
[11:0] Recurrence Specifies how many triggers can fire before the SCP stops
sending sensor readings. The following values are special:
0x0000 Remove configured triggers and stop sending
sensor readings.
0xFFFF Continue accepting trigger events and sending
continuous sensor readings
[12] Trigger Above Send a reading when the sensor crosses the upper limit
Upper Limit (increasing):
0 Disabled
1 Enabled
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-30
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
[13] Trigger Below Send a reading when the sensor crosses the upper limit
Upper Limit (decreasing).
0 Disabled
1 Enabled
[14] Trigger Above Send a reading when the sensor crosses the lower limit
Lower Limit (increasing).
0 Disabled
1 Enabled
[15] Trigger Below Send a reading when the sensor crosses the lower limit
Lower Limit (decreasing).
0 Disabled
1 Enabled
[31:0] Lower Limit Low The least significant 32 bits of the lower limit for triggers.
[31:0] Upper Limit Low The least significant 32 bits of the upper limit for triggers.
[31:0] Lower Limit High The most significant 32 bits of the lower limit for triggers.
[31:0] Upper Limit High The most significant 32 bits of the upper limit for triggers.
SCP to AP payload
None.
Sends a sensor reading from the SCP to the AP when a sensor with periodic readings or
bounds-based triggers enabled has new data available.
Note
The SCP initializes this command.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-31
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
Header details
Command ID 0x1A
Set ID 0 (Standard)
AP to SCP payload
None.
SCP to AP payload
Offset Description
0 Metadata
Set the power state of a given peripheral device. This command is distinct from the CSS Power
State equivalents. It is designed for configuration of peripheral devices that are not part of the
CSS.
Header details
Command ID 0x1B
Set ID 0 (Standard)
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-32
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
AP to SCP payload
Offset Description
0 Device
SCP to AP payload
None.
Get the power state of a given peripheral device. This command is distinct from the CSS Power
State equivalents. It is designed for configuration of peripheral devices that are not part of the
CSS.
Header details
Command ID 0x1C
Set ID 0 (Standard)
AP to SCP payload
Offset Description
0 Device ID
SCP to AP payload
Offset Description
0 Power State
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-33
ID052516 Non-Confidential
CSS System Control and Power Interface (SCPI)
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 3-34
ID052516 Non-Confidential
Chapter 4
CSS Boot Over MHU (BOM) protocol
The following topics describe the Boot Over MHU (BOM) protocol:
• About the BOM protocol on page 4-2.
• Boot protocol flow on page 4-4.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 4-1
ID052516 Non-Confidential
CSS Boot Over MHU (BOM) protocol
The protocol is based on two secure physical channels, one in each direction, two virtual
channels and a shared memory area of 16 bytes.
• 4 bytes for the command header.
• 8 bytes for the payload.
• 4 reserved bytes.
Because the protocol shares a single area of memory between the two virtual channels,
arbitration is required to prevent the SCP from overwriting data that the AP writes, or the AP
overwriting data that the SCP writes.
All operations affecting the shared memory are considered synchronous. After writing to
memory, both the SCP and the AP must wait for the appropriate response to their command
before writing again.
Info Contains information about the firmware image being transferred, such as the
total size, and an Adler32 checksum value.
Data Used to instruct the SCP to copy across one or more portions of the firmware
image into its internal RAM.
The AP always initiates the sequence by sending a single Info command, followed by a varying
number of Data commands.
0
31 | 30 |…. STATUS ……| 1 | 0 Header
BOM Virtual Channel 4
(AP to SCP)
Payload
BOM Virtual Channel
Physical Channel (SCP to AP) (SCP to AP)
12
31 | 30 |…. SET ……| 1 | 0 Reserved
16
31 | 30 |…. CLEAR ……| 1 | 0
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 4-2
ID052516 Non-Confidential
CSS Boot Over MHU (BOM) protocol
The firmware image can be copied across completely with a single Data command and setting
the Block Size to be the total image size. It can also be copied by using multiple Data commands
with a smaller Block Size value. The results are equivalent and the choice is left to the AP
platform software.
Note
The block data itself is not copied into the shared memory area of the channel. Instead, its
location is indicated in the command. This approach reduces the number of internal copies on
the AP firmware.
The SCP responds to each command with a status value that uses zero to indicate success or
non-zero values to indicate failure. In contrast to the SCPI protocol, the meanings of the return
codes are not consistent across all commands. Refer to the description of individual commands
when interpreting non-zero return codes.
When a failure occurs the SCP requires the previous, failed command to be reissued. A
platform-specific limit exists for the maximum number of failed commands that the SCP
tolerates. The exception to this rule is if checksum validation fails after the SCP receives the
final Data command. In such a case, regardless of the number of failed commands that are seen,
the SCP sends a response message with the status code set to Corrupted Image.
Once the limit is exceeded, the boot process is considered to have failed and a platform-specific
response is carried out. The BOM protocol does not enforce any particular course of action.
However, some suitable possibilities are:
• Resetting the platform.
• Restarting the complete boot process.
• Negotiating an alternative boot method.
4.1.2 Validation
The SCP ROM firmware implements an Adler-32 checksum algorithm that is used to validate
the RAM firmware image once it has been transferred. The checksum is only used to ensure that
the image has been received without any corruption by hardware or software and must not be
considered a form of authentication. If the platform requires authentication, the AP secure
firmware must authenticate the SCP RAM firmware image before sending it to the SCP.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 4-3
ID052516 Non-Confidential
CSS Boot Over MHU (BOM) protocol
Reply with
<success>
Is response
an <error>?
Platform-defined behaviour
Boot Failed Done A B A followed by B
A B A affects B
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 4-4
ID052516 Non-Confidential
CSS Boot Over MHU (BOM) protocol
[31:8] RESERVED -
Info
The Info command contains information about the firmware image to be transferred, the size of
the image, and its Adler-32 checksum.
Offset Description
0 Image size
4 Image hash
[31:0] Image size Image size in bytes. The value must be a multiple of 4.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 4-5
ID052516 Non-Confidential
CSS Boot Over MHU (BOM) protocol
The SCP to AP status response is a 32 bits parameter with the following values:
Data
The AP to SCP Data command transfers blocks of the SCP RAM firmware image from the AP
to the SCP. The command is sent one or more times until the whole SCP RAM firmware image
is sent to the SCP.
Offset Description
4 Block size
[31:0] Offset Address offset of the image block from the base of the Trusted
RAM. The value must be 4-byte aligned.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 4-6
ID052516 Non-Confidential
CSS Boot Over MHU (BOM) protocol
The SCP to AP status response is a 32 bits parameter with the following values:
Invalid commands
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. 4-7
ID052516 Non-Confidential
Appendix A
Juno ARM Development Platform (ADP)
implementation details
Previous chapters have covered the SCP Message Interface Protocols in a generic manner that
is applicable to all current ARM Compute Subsystems, without reference to configurations and
values that are specific to any CSS or platform.
For the Juno ADP the specific protocol constraints and implementation details are provided in
the following sections:
• MHU Transport Layer (MTL) configuration on page A-2.
• System Control and Power Interface (SCPI) header format on page A-4.
• SCPI commands on page A-5.
• Boot Over MHU (BOM) protocol on page A-16.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-1
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
See the Juno ARM® Development Platform SoC Technical Reference Manual for more
information.
Secure channels
• Slots 1-30:
— Unused.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-2
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
• Slots 1-30:
— Unused.
• Slots 1-30:
— Unused.
• Secure channels:
— ARM Trusted Firmware.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-3
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
[31:25] RESERVED -
[63:32] Status Status indicating the success of a command. The status field is only used
by the SCP when it is sending a message to the AP.
0 SCPI_OK - Success
1 SCPI_E_PARAM – Invalid parameter(s)
2 SCPI_E_ALIGN – Invalid alignment
3 SCPI_E_SIZE – Invalid size
4 SCPI_E_HANDLER – Invalid handler or callback
5 SCPI_E_ACCESS – Invalid access or permission denied
6 SCPI_E_RANGE – Value out of range
7 SCPI_E_TIMEOUT – Timeout has occurred
8 SCPI_E_NOMEM – Invalid memory area or pointer
9 SCPI_E_PWRSTATE – Invalid power state
10 SCPI_E_SUPPORT – Feature not supported or disabled
11 SCPI_E_DEVICE– Device error
12 SCPI_E_BUSY – Device is busy
13 SCPI_E_OS - RTOS error occurred
14 SCPI_E_DATA - Unexpected or invalid data received
15 SCPI_E_STATE - Invalid or unattainable state requested
Note
Shaded entries are Juno-specific variants.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-4
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
Note
Where payload structures are shown it is the shaded fields that give Juno-specific constraints.
Fields without shading are unchanged from the generic SCPI command set.
[3:0] CPU ID CPU ID is a number that identifies the core in its cluster.
0 CPU0
1 CPU1
2 CPU2 (LITTLE cluster only)
3 CPU3 (LITTLE cluster only)
[7:4] Cluster ID Cluster ID is a number that identifies the cluster in the system.
0 big
1 LITTLE
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-5
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
[31:20] RESERVED -
[3:0] Cluster ID Cluster ID is a number that identifies the cluster in the system.
0 big
1 LITTLE
[15:8] CPUs power state Current power state of each core belonging to Cluster ID. Each
bit corresponds to a core, with bit 0 assigned to CPU 0.
0 Off
1 On
Note
The REFCLK rate on Juno is 50MHz.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-6
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
[15:8] Operating Point An index in the Operating Point List. See Get DVFS Info.
Index
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-7
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-8
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
Note
Some of the clock devices are not writable. Use the Get Clock Info on page A-8 command to
retrieve access permissions for each clock.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-9
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
Note
All power supply devices on Juno are read only.
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-10
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
Description
Bits Name
Juno R0 Juno R1 and R2
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-11
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
Description
Bits Name
Juno R0 Juno R1 and R2
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-12
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
Description
Bits Name
Juno R0 Juno R1 and R2
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-13
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
Description
Bits Name
Juno R0 Juno R1 and R2
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-14
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-15
ID052516 Non-Confidential
Juno ARM Development Platform (ADP) implementation details
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. A-16
ID052516 Non-Confidential
Appendix B
Revisions
This appendix describes the technical changes between released issues of this book.
First release - -
Clarify that document applies to ARM Compute Subsystems only Throughout v1.0
128 bytes changed to 128KB Boot Over MHU (BOM) protocol on page A-16 v1.0
Changed the Get Sensor Value attributes Get Sensor Value on page A-11 v1.0
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. B-1
ID052516 Non-Confidential
Revisions
Changed the Get Sensor Value attributes Get Sensor Value on page A-11 v1.0
Changed the Config Periodic Sensor Readings attributes Config Periodic Sensor Readings on page A-13 v1.0
Changed the Config Sensor Bounds attributes Config Sensor Bounds on page A-13 v1.0
Updated SCP to AP payload tables • Get Sensor Value on page 3-26 v1.1
• Config Sensor Bounds on page 3-29
• Async Sensor Value on page 3-31
Added the following error codes: • Table 3-1 on page 3-2 v1.2
• SCPI_E_OS. • Table A-1 on page A-4
• SCPI_E_DATA.
• SCPI_E_STATE.
Added the Energy sensor class • Table 3-87 on page 3-26 v1.2
• Table A-17 on page A-12
Added energy consumption sensor IDs for: • Table A-15 on page A-11 v1.2
• SYSTOP. • Table A-16 on page A-12
• big cluster. • Table A-18 on page A-13
• LITTLE cluster. • Table A-19 on page A-14
• GPU.
Changed Count field width from 32 to 16 bits. Table 3-48 on page 3-17 v1.2
ARM DUI 0922G Copyright © 2015, 2016 ARM Limited or its affiliates. All rights reserved. B-2
ID052516 Non-Confidential