forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dt-bindings: firmware: convert Qualcomm SCM binding to the yaml
Convert Qualcomm SCM firmware binding to the yaml format. This commit also: - adds qcom,scm-mdm9607 into list which has only core clock - adds qcom,scm-sm6125, qcom,scm-ipq6018 - #reset-cells, because the property is already used Signed-off-by: David Heidelberg <[email protected]> Reviewed-by: Rob Herring <[email protected]> Acked-by: Guru Das Srinagesh <[email protected]> Signed-off-by: Bjorn Andersson <[email protected]> Link: https://lore.kernel.org/r/[email protected]
- Loading branch information
Showing
2 changed files
with
147 additions
and
61 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
147 changes: 147 additions & 0 deletions
147
Documentation/devicetree/bindings/firmware/qcom,scm.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,147 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/firmware/qcom,scm.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: QCOM Secure Channel Manager (SCM) | ||
|
||
description: | | ||
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. | ||
maintainers: | ||
- Bjorn Andersson <[email protected]> | ||
- Robert Marko <[email protected]> | ||
- Guru Das Srinagesh <[email protected]> | ||
|
||
properties: | ||
compatible: | ||
items: | ||
- enum: | ||
- qcom,scm-apq8064 | ||
- qcom,scm-apq8084 | ||
- qcom,scm-ipq4019 | ||
- qcom,scm-ipq6018 | ||
- qcom,scm-ipq806x | ||
- qcom,scm-ipq8074 | ||
- qcom,scm-mdm9607 | ||
- qcom,scm-msm8226 | ||
- qcom,scm-msm8660 | ||
- qcom,scm-msm8916 | ||
- qcom,scm-msm8953 | ||
- qcom,scm-msm8960 | ||
- qcom,scm-msm8974 | ||
- qcom,scm-msm8976 | ||
- qcom,scm-msm8994 | ||
- qcom,scm-msm8996 | ||
- qcom,scm-msm8998 | ||
- qcom,scm-sc7180 | ||
- qcom,scm-sc7280 | ||
- qcom,scm-sc8280xp | ||
- qcom,scm-sdm845 | ||
- qcom,scm-sdx55 | ||
- qcom,scm-sdx65 | ||
- qcom,scm-sm6125 | ||
- qcom,scm-sm6350 | ||
- qcom,scm-sm8150 | ||
- qcom,scm-sm8250 | ||
- qcom,scm-sm8350 | ||
- qcom,scm-sm8450 | ||
- qcom,scm-qcs404 | ||
- const: qcom,scm | ||
|
||
clocks: | ||
minItems: 1 | ||
maxItems: 3 | ||
|
||
clock-names: | ||
minItems: 1 | ||
maxItems: 3 | ||
|
||
interconnects: | ||
maxItems: 1 | ||
|
||
interconnect-names: | ||
maxItems: 1 | ||
|
||
'#reset-cells': | ||
const: 1 | ||
|
||
qcom,dload-mode: | ||
$ref: /schemas/types.yaml#/definitions/phandle-array | ||
items: | ||
- items: | ||
- description: phandle to TCSR hardware block | ||
- description: offset of the download mode control register | ||
description: TCSR hardware block | ||
|
||
allOf: | ||
- if: | ||
properties: | ||
compatible: | ||
contains: | ||
enum: | ||
- qcom,scm-apq8064 | ||
- qcom,scm-msm8660 | ||
- qcom,scm-msm8960 | ||
then: | ||
properties: | ||
clock-names: | ||
items: | ||
- const: core | ||
|
||
clocks: | ||
maxItems: 1 | ||
|
||
required: | ||
- clocks | ||
- clock-names | ||
|
||
- if: | ||
properties: | ||
compatible: | ||
contains: | ||
enum: | ||
- qcom,scm-apq8084 | ||
- qcom,scm-mdm9607 | ||
- qcom,scm-msm8916 | ||
- qcom,scm-msm8953 | ||
- qcom,scm-msm8974 | ||
- qcom,scm-msm8976 | ||
then: | ||
properties: | ||
clock-names: | ||
items: | ||
- const: core | ||
- const: bus | ||
- const: iface | ||
|
||
clocks: | ||
minItems: 3 | ||
maxItems: 3 | ||
|
||
required: | ||
- clocks | ||
- clock-names | ||
|
||
required: | ||
- compatible | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/clock/qcom,gcc-msm8916.h> | ||
firmware { | ||
scm { | ||
compatible = "qcom,scm-msm8916", "qcom,scm"; | ||
clocks = <&gcc GCC_CRYPTO_CLK>, | ||
<&gcc GCC_CRYPTO_AXI_CLK>, | ||
<&gcc GCC_CRYPTO_AHB_CLK>; | ||
clock-names = "core", "bus", "iface"; | ||
}; | ||
}; |