18c2ecf20Sopenharmony_ciQCOM Secure Channel Manager (SCM)
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciQualcomm processors include an interface to communicate to the secure firmware.
48c2ecf20Sopenharmony_ciThis interface allows for clients to request different types of actions.  These
58c2ecf20Sopenharmony_cican include CPU power up/down, HDCP requests, loading of firmware, and other
68c2ecf20Sopenharmony_ciassorted actions.
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ciRequired properties:
98c2ecf20Sopenharmony_ci- compatible: must contain one of the following:
108c2ecf20Sopenharmony_ci * "qcom,scm-apq8064"
118c2ecf20Sopenharmony_ci * "qcom,scm-apq8084"
128c2ecf20Sopenharmony_ci * "qcom,scm-ipq4019"
138c2ecf20Sopenharmony_ci * "qcom,scm-ipq806x"
148c2ecf20Sopenharmony_ci * "qcom,scm-ipq8074"
158c2ecf20Sopenharmony_ci * "qcom,scm-msm8660"
168c2ecf20Sopenharmony_ci * "qcom,scm-msm8916"
178c2ecf20Sopenharmony_ci * "qcom,scm-msm8960"
188c2ecf20Sopenharmony_ci * "qcom,scm-msm8974"
198c2ecf20Sopenharmony_ci * "qcom,scm-msm8994"
208c2ecf20Sopenharmony_ci * "qcom,scm-msm8996"
218c2ecf20Sopenharmony_ci * "qcom,scm-msm8998"
228c2ecf20Sopenharmony_ci * "qcom,scm-sc7180"
238c2ecf20Sopenharmony_ci * "qcom,scm-sdm845"
248c2ecf20Sopenharmony_ci * "qcom,scm-sm8150"
258c2ecf20Sopenharmony_ci and:
268c2ecf20Sopenharmony_ci * "qcom,scm"
278c2ecf20Sopenharmony_ci- clocks: Specifies clocks needed by the SCM interface, if any:
288c2ecf20Sopenharmony_ci * core clock required for "qcom,scm-apq8064", "qcom,scm-msm8660" and
298c2ecf20Sopenharmony_ci   "qcom,scm-msm8960"
308c2ecf20Sopenharmony_ci * core, iface and bus clocks required for "qcom,scm-apq8084",
318c2ecf20Sopenharmony_ci   "qcom,scm-msm8916" and "qcom,scm-msm8974"
328c2ecf20Sopenharmony_ci- clock-names: Must contain "core" for the core clock, "iface" for the interface
338c2ecf20Sopenharmony_ci  clock and "bus" for the bus clock per the requirements of the compatible.
348c2ecf20Sopenharmony_ci- qcom,dload-mode: phandle to the TCSR hardware block and offset of the
358c2ecf20Sopenharmony_ci		   download mode control register (optional)
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ciExample for MSM8916:
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci	firmware {
408c2ecf20Sopenharmony_ci		scm {
418c2ecf20Sopenharmony_ci			compatible = "qcom,msm8916", "qcom,scm";
428c2ecf20Sopenharmony_ci			clocks = <&gcc GCC_CRYPTO_CLK> ,
438c2ecf20Sopenharmony_ci				 <&gcc GCC_CRYPTO_AXI_CLK>,
448c2ecf20Sopenharmony_ci				 <&gcc GCC_CRYPTO_AHB_CLK>;
458c2ecf20Sopenharmony_ci			clock-names = "core", "bus", "iface";
468c2ecf20Sopenharmony_ci		};
478c2ecf20Sopenharmony_ci	};
48