123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- QCOM Secure Channel Manager (SCM)
- Qualcomm processors include an interface to communicate to the secure firmware.
- This interface allows for clients to request different types of actions. These
- can include CPU power up/down, HDCP requests, loading of firmware, and other
- assorted actions.
- Required properties:
- - compatible: must contain one of the following:
- * "qcom,scm-apq8064" for APQ8064 platforms
- * "qcom,scm-msm8660" for MSM8660 platforms
- * "qcom,scm-msm8690" for MSM8690 platforms
- * "qcom,scm" for later processors (MSM8916, APQ8084, MSM8974, etc)
- * "android,firmware" for firmware image
- * "android,vbmeta" for setting system properties for verified boot.
- * "android,system" for system partition properties.
- - clocks: One to three clocks may be required based on compatible.
- * Only core clock required for "qcom,scm-apq8064", "qcom,scm-msm8660", and "qcom,scm-msm8960"
- * Core, iface, and bus clocks required for "qcom,scm"
- - clock-names: Must contain "core" for the core clock, "iface" for the interface
- clock and "bus" for the bus clock per the requirements of the compatible.
- Example for MSM8916:
- firmware {
- scm {
- compatible = "qcom,scm";
- clocks = <&gcc GCC_CRYPTO_CLK> , <&gcc GCC_CRYPTO_AXI_CLK>, <&gcc GCC_CRYPTO_AHB_CLK>;
- clock-names = "core", "bus", "iface";
- };
- };
- Example for SDM845:
- firmware {
- android {
- compatible = "android,firmware";
- vbmeta {
- compatible = "android,vbmeta";
- parts = "vbmeta,boot,system,vendor,dtbo";
- };
- fstab {
- compatible = "android,fstab";
- vendor {
- compatible = "android,vendor";
- dev = "/dev/block/platform/soc/1d84000.ufshc/by-name/vendor";
- type = "ext4";
- mnt_flags = "ro,barrier=1,discard";
- fsmgr_flags = "wait,slotselect,avb";
- };
- };
- };
- };
|