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 << 65 64 66 qcom,smd-edge: 65 qcom,smd-edge: 67 $ref: /schemas/types.yaml#/definitions/uin 66 $ref: /schemas/types.yaml#/definitions/uint32 68 description: 67 description: 69 The identifier of the remote processor i 68 The identifier of the remote processor in the smd channel allocation 70 table. 69 table. 71 70 72 qcom,remote-pid: 71 qcom,remote-pid: 73 $ref: /schemas/types.yaml#/definitions/uin 72 $ref: /schemas/types.yaml#/definitions/uint32 74 description: 73 description: 75 The identifier for the remote processor 74 The identifier for the remote processor as known by the rest of the 76 system. 75 system. 77 76 78 rpm-requests: 77 rpm-requests: 79 $ref: /schemas/soc/qcom/qcom,smd-rpm.yaml# 78 $ref: /schemas/soc/qcom/qcom,smd-rpm.yaml# 80 required: 79 required: 81 - qcom,smd-channels 80 - qcom,smd-channels 82 description: 81 description: 83 Qualcomm Resource Power Manager (RPM) ov 82 Qualcomm Resource Power Manager (RPM) over SMD. 84 83 85 wcnss: 84 wcnss: 86 $ref: /schemas/soc/qcom/qcom,wcnss.yaml 85 $ref: /schemas/soc/qcom/qcom,wcnss.yaml 87 required: 86 required: 88 - qcom,smd-channels 87 - qcom,smd-channels 89 description: 88 description: 90 Qualcomm WCNSS for Bluetooth, WiFi and F 89 Qualcomm WCNSS for Bluetooth, WiFi and FM radio. 91 90 92 required: 91 required: 93 - interrupts 92 - interrupts 94 - qcom,smd-edge 93 - qcom,smd-edge 95 94 96 oneOf: 95 oneOf: 97 - required: 96 - required: 98 - mboxes 97 - mboxes 99 - required: 98 - required: 100 - qcom,ipc 99 - qcom,ipc 101 100 102 additionalProperties: false 101 additionalProperties: false 103 102 104 examples: 103 examples: 105 - | 104 - | 106 #include <dt-bindings/interrupt-controller 105 #include <dt-bindings/interrupt-controller/arm-gic.h> 107 #include <dt-bindings/mailbox/qcom-ipcc.h> 106 #include <dt-bindings/mailbox/qcom-ipcc.h> 108 107 109 remoteproc { 108 remoteproc { 110 // ... 109 // ... 111 110 112 smd-edge { 111 smd-edge { 113 interrupts = <GIC_SPI 156 IRQ_TYPE 112 interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>; 114 113 115 mboxes = <&apcs 8>; !! 114 qcom,ipc = <&apcs 8 8>; 116 qcom,smd-edge = <1>; 115 qcom,smd-edge = <1>; 117 }; 116 }; 118 }; 117 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.