Bjorn Andersson | c49e9e9 | 2016-06-06 16:58:19 -0700 | [diff] [blame] | 1 | Qualcomm WCNSS Binding |
| 2 | |
| 3 | This binding describes the Qualcomm WCNSS hardware. It consists of control |
| 4 | block and a BT, WiFi and FM radio block, all using SMD as command channels. |
| 5 | |
| 6 | - compatible: |
| 7 | Usage: required |
| 8 | Value type: <string> |
| 9 | Definition: must be: "qcom,wcnss", |
| 10 | |
| 11 | - qcom,smd-channel: |
| 12 | Usage: required |
| 13 | Value type: <string> |
| 14 | Definition: standard SMD property specifying the SMD channel used for |
| 15 | communication with the WiFi firmware. |
| 16 | Should be "WCNSS_CTRL". |
| 17 | |
| 18 | - qcom,mmio: |
| 19 | Usage: required |
| 20 | Value type: <prop-encoded-array> |
| 21 | Definition: reference to a node specifying the wcnss "ccu" and "dxe" |
| 22 | register blocks. The node must be compatible with one of |
| 23 | the following: |
| 24 | "qcom,riva", |
| 25 | "qcom,pronto" |
| 26 | |
| 27 | = SUBNODES |
| 28 | The subnodes of the wcnss node are optional and describe the individual blocks in |
| 29 | the WCNSS. |
| 30 | |
| 31 | == Bluetooth |
| 32 | The following properties are defined to the bluetooth node: |
| 33 | |
| 34 | - compatible: |
| 35 | Usage: required |
| 36 | Value type: <string> |
| 37 | Definition: must be: |
| 38 | "qcom,wcnss-bt" |
| 39 | |
Loic Poulain | e7868a2 | 2017-09-08 15:57:54 +0200 | [diff] [blame] | 40 | - local-bd-address: |
| 41 | Usage: optional |
| 42 | Value type: <u8 array> |
| 43 | Definition: see Documentation/devicetree/bindings/net/bluetooth.txt |
| 44 | |
Bjorn Andersson | c49e9e9 | 2016-06-06 16:58:19 -0700 | [diff] [blame] | 45 | == WiFi |
| 46 | The following properties are defined to the WiFi node: |
| 47 | |
| 48 | - compatible: |
| 49 | Usage: required |
| 50 | Value type: <string> |
| 51 | Definition: must be one of: |
| 52 | "qcom,wcnss-wlan", |
| 53 | |
| 54 | - interrupts: |
| 55 | Usage: required |
| 56 | Value type: <prop-encoded-array> |
| 57 | Definition: should specify the "rx" and "tx" interrupts |
| 58 | |
| 59 | - interrupt-names: |
| 60 | Usage: required |
| 61 | Value type: <stringlist> |
| 62 | Definition: must contain "rx" and "tx" |
| 63 | |
| 64 | - qcom,smem-state: |
| 65 | Usage: required |
| 66 | Value type: <prop-encoded-array> |
| 67 | Definition: should reference the tx-enable and tx-rings-empty SMEM states |
| 68 | |
| 69 | - qcom,smem-state-names: |
| 70 | Usage: required |
| 71 | Value type: <stringlist> |
| 72 | Definition: must contain "tx-enable" and "tx-rings-empty" |
| 73 | |
| 74 | = EXAMPLE |
| 75 | The following example represents a SMD node, with one edge representing the |
| 76 | "pronto" subsystem, with the wcnss device and its wcn3680 BT and WiFi blocks |
| 77 | described; as found on the 8974 platform. |
| 78 | |
| 79 | smd { |
| 80 | compatible = "qcom,smd"; |
| 81 | |
| 82 | pronto-edge { |
| 83 | interrupts = <0 142 1>; |
| 84 | |
| 85 | qcom,ipc = <&apcs 8 17>; |
| 86 | qcom,smd-edge = <6>; |
| 87 | |
| 88 | wcnss { |
| 89 | compatible = "qcom,wcnss"; |
| 90 | qcom,smd-channels = "WCNSS_CTRL"; |
| 91 | |
| 92 | #address-cells = <1>; |
| 93 | #size-cells = <1>; |
| 94 | |
| 95 | qcom,mmio = <&pronto>; |
| 96 | |
| 97 | bt { |
| 98 | compatible = "qcom,wcnss-bt"; |
Loic Poulain | e7868a2 | 2017-09-08 15:57:54 +0200 | [diff] [blame] | 99 | |
| 100 | /* BD address 00:11:22:33:44:55 */ |
| 101 | local-bd-address = [ 55 44 33 22 11 00 ]; |
Bjorn Andersson | c49e9e9 | 2016-06-06 16:58:19 -0700 | [diff] [blame] | 102 | }; |
| 103 | |
| 104 | wlan { |
| 105 | compatible = "qcom,wcnss-wlan"; |
| 106 | |
| 107 | interrupts = <0 145 0>, <0 146 0>; |
| 108 | interrupt-names = "tx", "rx"; |
| 109 | |
| 110 | qcom,smem-state = <&apps_smsm 10>, <&apps_smsm 9>; |
| 111 | qcom,smem-state-names = "tx-enable", "tx-rings-empty"; |
| 112 | }; |
| 113 | }; |
| 114 | }; |
| 115 | }; |
| 116 | |
| 117 | soc { |
| 118 | pronto: pronto { |
| 119 | compatible = "qcom,pronto"; |
| 120 | |
| 121 | reg = <0xfb204000 0x2000>, <0xfb202000 0x1000>, <0xfb21b000 0x3000>; |
| 122 | reg-names = "ccu", "dxe", "pmu"; |
| 123 | }; |
| 124 | }; |