1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/soc/qcom/qcom,wcnss.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Qualcomm WCNSS
8
9 maintainers:
10 - Andy Gross <agross@kernel.org>
11 - Bjorn Andersson <bjorn.andersson@linaro.org>
12
13 description:
14 The Qualcomm WCNSS hardware consists of control block and a BT, WiFi and FM
15 radio block, all using SMD as command channels.
16
17 properties:
18 compatible:
19 const: qcom,wcnss
20
21 firmware-name:
22 $ref: /schemas/types.yaml#/definitions/string
23 default: "wlan/prima/WCNSS_qcom_wlan_nv.bin"
24 description:
25 Relative firmware image path for the WLAN NV blob.
26
27 qcom,mmio:
28 $ref: /schemas/types.yaml#/definitions/phandle
29 description: |
30 Reference to a node specifying the wcnss "ccu" and "dxe" register blocks.
31 The node must be compatible with one of the following::
32 - qcom,riva"
33 - qcom,pronto"
34
35 qcom,smd-channels:
36 $ref: /schemas/types.yaml#/definitions/string
37 const: WCNSS_CTRL
38 description:
39 Standard SMD property specifying the SMD channel used for communication
40 with the WiFi firmware.
41
42 bluetooth:
43 type: object
44 additionalProperties: false
45 properties:
46 compatible:
47 const: qcom,wcnss-bt
48
49 local-bd-address:
50 $ref: /schemas/types.yaml#/definitions/uint8-array
51 maxItems: 6
52 description:
53 See Documentation/devicetree/bindings/net/bluetooth.txt
54
55 required:
56 - compatible
57
58 wifi:
59 additionalProperties: false
60 type: object
61 properties:
62 compatible:
63 const: qcom,wcnss-wlan
64
65 interrupts:
66 maxItems: 2
67
68 interrupt-names:
69 items:
70 - const: tx
71 - const: rx
72
73 qcom,smem-states:
74 $ref: /schemas/types.yaml#/definitions/phandle-array
75 maxItems: 2
76 description:
77 Should reference the tx-enable and tx-rings-empty SMEM states.
78
79 qcom,smem-state-names:
80 items:
81 - const: tx-enable
82 - const: tx-rings-empty
83 description:
84 Names of SMEM states.
85
86 required:
87 - compatible
88 - interrupts
89 - interrupt-names
90 - qcom,smem-states
91 - qcom,smem-state-names
92
93 required:
94 - compatible
95 - qcom,mmio
96 - qcom,smd-channels
97
98 additionalProperties: false
99
100 examples:
101 - |
102 #include <dt-bindings/interrupt-controller/arm-gic.h>
103
104 smd-edge {
105 interrupts = <GIC_SPI 142 IRQ_TYPE_EDGE_RISING>;
106
107 qcom,ipc = <&apcs 8 17>;
108 qcom,smd-edge = <6>;
109 qcom,remote-pid = <4>;
110
111 label = "pronto";
112
113 wcnss {
114 compatible = "qcom,wcnss";
115 qcom,smd-channels = "WCNSS_CTRL";
116
117 qcom,mmio = <&pronto>;
118
119 bluetooth {
120 compatible = "qcom,wcnss-bt";
121 /* BD address 00:11:22:33:44:55 */
122 local-bd-address = [ 55 44 33 22 11 00 ];
123 };
124
125 wifi {
126 compatible = "qcom,wcnss-wlan";
127
128 interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
129 <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
130 interrupt-names = "tx", "rx";
131
132 qcom,smem-states = <&apps_smsm 10>, <&apps_smsm 9>;
133 qcom,smem-state-names = "tx-enable", "tx-rings-empty";
134 };
135 };
136 };
Cache object: a15caa3801b793bd2ed88de6b74d7a4d
|