blob: bdba5268830d0943cc5e24503276bead7a44c346 [file] [log] [blame]
Andy Grossece85832016-06-03 18:25:21 -05001QCOM Secure Channel Manager (SCM)
2
3Qualcomm processors include an interface to communicate to the secure firmware.
4This interface allows for clients to request different types of actions. These
5can include CPU power up/down, HDCP requests, loading of firmware, and other
6assorted actions.
7
8Required properties:
9- compatible: must contain one of the following:
10 * "qcom,scm-apq8064" for APQ8064 platforms
11 * "qcom,scm-msm8660" for MSM8660 platforms
12 * "qcom,scm-msm8690" for MSM8690 platforms
13 * "qcom,scm" for later processors (MSM8916, APQ8084, MSM8974, etc)
Neeraj Soni85540032017-12-13 15:55:07 +053014 * "android,firmware" for firmware image
15 * "android,vbmeta" for setting system properties for verified boot.
Andy Grossece85832016-06-03 18:25:21 -050016- clocks: One to three clocks may be required based on compatible.
17 * Only core clock required for "qcom,scm-apq8064", "qcom,scm-msm8660", and "qcom,scm-msm8960"
18 * Core, iface, and bus clocks required for "qcom,scm"
19- clock-names: Must contain "core" for the core clock, "iface" for the interface
20 clock and "bus" for the bus clock per the requirements of the compatible.
21
22Example for MSM8916:
23
24 firmware {
25 scm {
26 compatible = "qcom,scm";
27 clocks = <&gcc GCC_CRYPTO_CLK> , <&gcc GCC_CRYPTO_AXI_CLK>, <&gcc GCC_CRYPTO_AHB_CLK>;
28 clock-names = "core", "bus", "iface";
29 };
30 };
Neeraj Soni85540032017-12-13 15:55:07 +053031
32Example for SDM845:
33
34 firmware {
35 android {
36 compatible = "android,firmware";
37 vbmeta {
38 compatible = "android,vbmeta";
39 parts = "vbmeta,boot,system,vendor,dtbo";
40 };
41
42 fstab {
43 compatible = "android,fstab";
44 vendor {
45 compatible = "android,vendor";
46 dev = "/dev/block/platform/soc/1d84000.ufshc/by-name/vendor";
47 type = "ext4";
48 mnt_flags = "ro,barrier=1,discard";
49 fsmgr_flags = "wait,slotselect,avb";
50 };
51 };
52 };
53 };