You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# System Control and Management Interface Compliance Suite
2
+
3
+
## Introduction
4
+
**System Control and Management Interface** (SCMI) is a set of operating system-independent software interfaces that are used in system management.
5
+
6
+
For more information, download the [SCMI Platform Design Document](http://infocenter.arm.com/help/topic/com.arm.doc.den0056b/DEN0056B_System_Control_and_Management_Interface_v2_0.pdf).
7
+
8
+
## SCMI compliance suite
9
+
SCMI compliance suite is a collection of self-checking, portable C tests. It enables adopters of SCMI PDD \(Platform Design Document\) to test their own implementations. It provides a predefined library of tests and a test framework to execute these tests. The test suite can be adapted to different platforms. It also enables the extension of the current test library to include platform-specific custom commands and custom protocols.
10
+
11
+
## Release details
12
+
- Code quality: REL v2.0 Alpha.
13
+
- The tests are written for version 2.0 of the SCMI PDD.
14
+
- The compliance suite maintains backward compatibility with version 1.0 of the SCMI PDD.
15
+
- The compliance suite is not a substitute for design verification.
16
+
- Refer to the [Test checklist] for the scenarios covered by the tests.
17
+
18
+
## GitHub branch
19
+
20
+
To get the latest version of the code with bug fixes and new features, use the master branch.
21
+
22
+
## Test scenarios
23
+
24
+
The mapping of the SCMI commands to the test cases are mentioned in the [Test checklist].
25
+
26
+
## Future enhancements
27
+
28
+
The following features or capability additions are planned as part of future releases:
29
+
- Testing notifications and delayed responses for relevant commands.
30
+
- Test library extension with new test cases for additional protocols as defined in the newer version of the PDD.
31
+
32
+
## Getting started
33
+
See the [User Guide] for instructions to adapt, build, and run the test suite.
34
+
35
+
### Additional reading
36
+
For details on the design of the SCMI test suite, see the [Validation Methodology Document].
37
+
38
+
## License
39
+
The software is provided under Apache 2.0 [License]. Contributions to this project are accepted under the same license.
40
+
41
+
## Feedback and support
42
+
Arm values and welcomes any feedback and contributions to this project.
43
+
44
+
* For feedback, use the issue tracker that is associated with this project [Issue Tracker](https://github.com/ARM-software/scmi-tests/issues).
45
+
* For support, send your queries to [support-scmi-acs@arm.com](mailto:support-scmi-acs@arm.com).
46
+
* Arm licensees can contact Arm directly through their partner managers.
47
+
* Arm welcomes code contributions through GitHub pull requests.
48
+
49
+
50
+
- - - - - - - - - - - - - - - - - - - -
51
+
52
+
_Copyright (c) 2019, Arm Limited and Contributors. All rights reserved._
53
+
54
+
[User Guide]: ./docs/user_guide.md"SCMI Test Suite User Guide"
55
+
[Validation Methodology Document]: ./docs/Arm_SCMI_Validation_Methodology.pdf"SCMI Test Suite Design"
56
+
[Test checklist]: ./docs/scmi_testlist.md"SCMI Test Specification"
*[Doorbell support patches for mailbox](#doorbell-support-patches-for-mailbox)
@@ -12,54 +12,27 @@ Table of Contents:
12
12
13
13
Introduction
14
14
-------
15
-
This document lists the instructions that must be followed to enable the Juno Linux image to run SCMI Linux application using the mailbox test driver interface.
15
+
This document lists the instructions that must be followed to run SCMI ACS as Linux application using the mailbox test driver interface on SGM platforms.
16
+
For an introduction to the System Guidance for Mobile (SGM) platforms, please refer to the [Arm Developer documentation].
16
17
17
-
Juno ADP software stack
18
+
Software Stack
18
19
-------
19
-
The [Arm connected community] maintains the information about the software stack support for Juno Arm Development Platform (ADP).
20
+
Arm provides a [super-project] with guides for building and running a full software stack on Arm platforms. This project provides a convenient wrapper around the various build systems involved in the software stack. Please contact Arm for support on software stack for SGM platform.
20
21
21
-
Linux kernel
22
+
Linux kernel
22
23
-------
23
-
The following changes must be made in the Linux kernel source code.
24
+
The following changes must be made in the Linux kernel source code after downloading software stack for SGM.
24
25
25
26
### Mailbox test driver
26
-
To use SCMI test agent on Juno platform, the Linux kernel must be rebuilt to include the mailbox test driver with mailbox doorbell support and additional changes. Doorbell support patches for mailbox and additional changes to enable mailbox test driver are tested against Linux kernel version 4.13.
27
+
To use SCMI test agent on SGM platform, the Linux kernel must be rebuilt to include the mailbox test driver with mailbox doorbell support and additional changes. Doorbell support patches for mailbox and additional changes to enable mailbox test driver are tested against Linux kernel version 4.13.
27
28
28
29
### Doorbell support patches for mailbox
29
-
The doorbell support for mailbox driver is enabled by applying a patch series that is currently discussed in LKML. For more information, see [Mailbox doorbell support patches]. Pick up the relevant mailbox patches from [Mailbox doorbell support repo]. These patches must be applied to the Juno mainline tracker kernel. The kernel can be downloaded using the steps that are mentioned on [Arm connected community].
30
+
The doorbell support for mailbox driver is enabled by applying a patch series that is currently discussed in LKML. For more information, see [Mailbox doorbell support patches]. Pick up the relevant mailbox patches from [Mailbox doorbell support repo]. These patches must be applied to the linux kernel.
30
31
31
32
### Additional changes to enable mailbox test driver
32
33
In addition to applying the patches, follow these steps before starting the kernel build.
33
34
34
-
`Enable mailbox test driver`: By default, Juno ADP kernels do not have the mailbox test driver enabled. Set CONFIG_MAILBOX_TEST=y in kernel config to include mailbox test driver in the kernel.
35
-
36
-
`Update device tree`: The Juno device trees currently have a node describing mailbox prior to the doorbell mode support. Also, the current device trees do not have a node describing the mailbox test. <br>
37
-
You must do the following in arch/arm64/boot/dts/arm/juno-base.dtsi. Replace existing node describing mailbox with the following:
38
-
39
-
```
40
-
mailbox: mhu@2b1f0000 {
41
-
compatible = "arm,mhu-doorbell", "arm,primecell";
42
-
reg = <0x0 0x2b1f0000 0x0 0x1000>;
43
-
interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,
44
-
<GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
45
-
interrupt-names = "mhu_lpri_rx",
46
-
"mhu_hpri_rx";
47
-
#mbox-cells = <2>;
48
-
mbox-name = "ARM-MHU";
49
-
clocks = <&soc_refclk100mhz>;
50
-
clock-names = "apb_pclk";
51
-
};
52
-
```
53
-
Then, add a new node describing the mailbox test as shown below:
`Enable mailbox test driver`: Set CONFIG_MAILBOX_TEST=y in kernel config to include mailbox test driver in the kernel.
63
36
64
37
`Modify mailbox driver to prevent format conversion`: The current version of mailbox driver always converts raw binary data to hex format. For SCMI test agent, we expect raw data unmodified for processing. The change that is shown below prevents the format change.
65
38
<br> The driver support to add this as a configurable option is planned for the future.
@@ -85,15 +58,16 @@ waitq_err:
85
58
The current change in mailbox test driver is not an ideal solution. A better solution is to use sysfs entry for configurability. This enhancement will be upstreamed in the future, thereby making this change redundant.
86
59
87
60
## Kernel build
88
-
Build the kernel and device tree after making the changes for Juno ADP, and flash the images in target.
61
+
Build the kernel and device tree after making the changes and use the run-scripts for running the SGM
89
62
90
-
For instructions to build the test suite for arm/juno platform and running it, see relevant sections in [User Guide].
63
+
For instructions to build the test suite for sgm platform and running it, see relevant sections in [User Guide].
91
64
92
65
- - - - - - - - - - - - - - - -
93
66
94
-
_Copyright (c) 2017, Arm Limited and Contributors. All rights reserved._
67
+
_Copyright (c) 2019, Arm Limited and Contributors. All rights reserved._
0 commit comments