1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/remoteproc/ 4 $id: http://devicetree.org/schemas/remoteproc/qcom,smd-edge.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Qualcomm SMD Edge communication channel 7 title: Qualcomm SMD Edge communication channel nodes 8 8 9 maintainers: 9 maintainers: 10 - Bjorn Andersson <bjorn.andersson@linaro.org 10 - Bjorn Andersson <bjorn.andersson@linaro.org> 11 11 12 description: 12 description: 13 Qualcomm SMD subnode represents a remote sub 13 Qualcomm SMD subnode represents a remote subsystem or a remote processor of 14 some sort - or in SMD language an "edge". Th 14 some sort - or in SMD language an "edge". The name of the edges are not 15 important. 15 important. 16 16 17 In turn, subnodes of the "edges" represent d 17 In turn, subnodes of the "edges" represent devices tied to SMD channels on 18 that "edge". The names of the devices are no 18 that "edge". The names of the devices are not important. The properties of 19 these nodes are defined by the individual bi 19 these nodes are defined by the individual bindings for the SMD devices. 20 See also Documentation/devicetree/bindings/s 20 See also Documentation/devicetree/bindings/soc/qcom/qcom,smd.yaml 21 21 22 properties: 22 properties: 23 $nodename: 23 $nodename: 24 const: smd-edge 24 const: smd-edge 25 25 26 apr: 26 apr: 27 $ref: /schemas/soc/qcom/qcom,apr.yaml# 27 $ref: /schemas/soc/qcom/qcom,apr.yaml# 28 required: 28 required: 29 - qcom,smd-channels 29 - qcom,smd-channels 30 description: 30 description: 31 Qualcomm APR/GPR (Asynchronous/Generic P 31 Qualcomm APR/GPR (Asynchronous/Generic Packet Router) 32 32 33 fastrpc: 33 fastrpc: 34 $ref: /schemas/misc/qcom,fastrpc.yaml# 34 $ref: /schemas/misc/qcom,fastrpc.yaml# 35 required: 35 required: 36 - qcom,smd-channels 36 - qcom,smd-channels 37 description: 37 description: 38 Qualcomm FastRPC 38 Qualcomm FastRPC 39 39 40 interrupts: 40 interrupts: 41 maxItems: 1 41 maxItems: 1 42 42 43 label: 43 label: 44 description: 44 description: 45 Name of the edge, used for debugging and 45 Name of the edge, used for debugging and identification purposes. The 46 node name will be used if this is not pr 46 node name will be used if this is not present. 47 47 48 mboxes: 48 mboxes: 49 maxItems: 1 49 maxItems: 1 50 description: 50 description: 51 Reference to the mailbox representing th 51 Reference to the mailbox representing the outgoing doorbell in APCS for 52 this client. 52 this client. 53 53 54 qcom,ipc: 54 qcom,ipc: 55 $ref: /schemas/types.yaml#/definitions/pha 55 $ref: /schemas/types.yaml#/definitions/phandle-array 56 items: 56 items: 57 - items: 57 - items: 58 - description: phandle to a syscon n 58 - description: phandle to a syscon node representing the APCS registers 59 - description: u32 representing offs 59 - description: u32 representing offset to the register within the syscon 60 - description: u32 representing the 60 - description: u32 representing the ipc bit within the register 61 description: 61 description: 62 Three entries specifying the outgoing ip 62 Three entries specifying the outgoing ipc bit used for signaling the 63 remote processor. 63 remote processor. 64 deprecated: true 64 deprecated: true 65 65 66 qcom,smd-edge: 66 qcom,smd-edge: 67 $ref: /schemas/types.yaml#/definitions/uin 67 $ref: /schemas/types.yaml#/definitions/uint32 68 description: 68 description: 69 The identifier of the remote processor i 69 The identifier of the remote processor in the smd channel allocation 70 table. 70 table. 71 71 72 qcom,remote-pid: 72 qcom,remote-pid: 73 $ref: /schemas/types.yaml#/definitions/uin 73 $ref: /schemas/types.yaml#/definitions/uint32 74 description: 74 description: 75 The identifier for the remote processor 75 The identifier for the remote processor as known by the rest of the 76 system. 76 system. 77 77 78 rpm-requests: 78 rpm-requests: 79 $ref: /schemas/soc/qcom/qcom,smd-rpm.yaml# 79 $ref: /schemas/soc/qcom/qcom,smd-rpm.yaml# 80 required: 80 required: 81 - qcom,smd-channels 81 - qcom,smd-channels 82 description: 82 description: 83 Qualcomm Resource Power Manager (RPM) ov 83 Qualcomm Resource Power Manager (RPM) over SMD. 84 84 85 wcnss: 85 wcnss: 86 $ref: /schemas/soc/qcom/qcom,wcnss.yaml 86 $ref: /schemas/soc/qcom/qcom,wcnss.yaml 87 required: 87 required: 88 - qcom,smd-channels 88 - qcom,smd-channels 89 description: 89 description: 90 Qualcomm WCNSS for Bluetooth, WiFi and F 90 Qualcomm WCNSS for Bluetooth, WiFi and FM radio. 91 91 92 required: 92 required: 93 - interrupts 93 - interrupts 94 - qcom,smd-edge 94 - qcom,smd-edge 95 95 96 oneOf: 96 oneOf: 97 - required: 97 - required: 98 - mboxes 98 - mboxes 99 - required: 99 - required: 100 - qcom,ipc 100 - qcom,ipc 101 101 102 additionalProperties: false 102 additionalProperties: false 103 103 104 examples: 104 examples: 105 - | 105 - | 106 #include <dt-bindings/interrupt-controller 106 #include <dt-bindings/interrupt-controller/arm-gic.h> 107 #include <dt-bindings/mailbox/qcom-ipcc.h> 107 #include <dt-bindings/mailbox/qcom-ipcc.h> 108 108 109 remoteproc { 109 remoteproc { 110 // ... 110 // ... 111 111 112 smd-edge { 112 smd-edge { 113 interrupts = <GIC_SPI 156 IRQ_TYPE 113 interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>; 114 114 115 mboxes = <&apcs 8>; 115 mboxes = <&apcs 8>; 116 qcom,smd-edge = <1>; 116 qcom,smd-edge = <1>; 117 }; 117 }; 118 }; 118 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.