Skip to end of banner
Go to start of banner

How to run a SCMI server / SCP-firmware ?

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

How to easily run a SCMI server in various Execution Environments

Under construction

Running SCMI server with OP-TEE

The easiest way to test the SCMI server in OP-TEE is to built it for qemu Armv8. OP-TEE documentation provides detailed information to build a qemu Armv8 dev environment here.

The SCP-firmware is not yet part of the manifest but a PR is under review to add it : https://github.com/OP-TEE/manifest/pull/252

Similarly, SCMI server is not enabled by default for qemu_v8 platform but a PR is under review to enable compiling OP-TEE os with SCMI server: https://github.com/OP-TEE/build/pull/695. In the meantime, a manifest using the PR has been created https://github.com/vingu-linaro/manifest/tree/optee-with-scmi .

You just need to add WITH_SCMI=y option in the make command to enable the SCMI server. The whole sequence to use the pending PRs can be summarized:

$ mkdir <project-dir>

$ cd <project-dir>

$ repo init -u https://github.com/vingu-linaro/manifest.git -b optee-with-scmi -m qemu_v8.xml

$ repo sync

$ cd build

$ make toolchains

$ make run WITH_SCMI=y

When booting with SCMI server, we use a dedicated DT instead of the one that is built on the fly by Qemu in order to provide a scmi node. The dts file is available in the build/qemu_v8 directory if someone needs to change it and is based on the dtb generated by Qemu.

The configuration of the scmi server is located in the directory : <project-dir>/SCP-firmware/product/optee-fvp/fw/. The following scmi protocols have been enable with mock devices:

  • clock protocol

  • performance domain protocol with one domain connected to cpufreq

  • power domain protocol

  • sensor protocol

The logs are enabled by default so you should see SCMI requests in the secure world console.

Running SCMI server in Secure partition

TBF

  • No labels