1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/net/bluetooth/qualcomm-bluetooth.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Qualcomm Bluetooth Chips 8 9maintainers: 10 - Balakrishna Godavarthi <bgodavar@codeaurora.org> 11 - Rocky Liao <rjliao@codeaurora.org> 12 13description: 14 This binding describes Qualcomm UART-attached bluetooth chips. 15 16properties: 17 compatible: 18 enum: 19 - qcom,qca2066-bt 20 - qcom,qca6174-bt 21 - qcom,qca9377-bt 22 - qcom,wcn3988-bt 23 - qcom,wcn3990-bt 24 - qcom,wcn3991-bt 25 - qcom,wcn3998-bt 26 - qcom,qca6390-bt 27 - qcom,wcn6750-bt 28 - qcom,wcn6855-bt 29 30 enable-gpios: 31 maxItems: 1 32 description: gpio specifier used to enable chip 33 34 swctrl-gpios: 35 maxItems: 1 36 description: gpio specifier is used to find status 37 of clock supply to SoC 38 39 clocks: 40 maxItems: 1 41 description: clock provided to the controller (SUSCLK_32KHZ) 42 43 vddio-supply: 44 description: VDD_IO supply regulator handle 45 46 vddxo-supply: 47 description: VDD_XO supply regulator handle 48 49 vddrf-supply: 50 description: VDD_RF supply regulator handle 51 52 vddch0-supply: 53 description: VDD_CH0 supply regulator handle 54 55 vddch1-supply: 56 description: VDD_CH1 supply regulator handle 57 58 vddaon-supply: 59 description: VDD_AON supply regulator handle 60 61 vddbtcxmx-supply: 62 description: VDD_BT_CXMX supply regulator handle 63 64 vddrfacmn-supply: 65 description: VDD_RFA_CMN supply regulator handle 66 67 vddrfa0p8-supply: 68 description: VDD_RFA_0P8 suppply regulator handle 69 70 vddrfa1p7-supply: 71 description: VDD_RFA_1P7 supply regulator handle 72 73 vddrfa1p2-supply: 74 description: VDD_RFA_1P2 supply regulator handle 75 76 vddrfa2p2-supply: 77 description: VDD_RFA_2P2 supply regulator handle 78 79 vddasd-supply: 80 description: VDD_ASD supply regulator handle 81 82 max-speed: 83 description: see Documentation/devicetree/bindings/serial/serial.yaml 84 85 firmware-name: 86 description: specify the name of nvm firmware to load 87 88 local-bd-address: true 89 90 91required: 92 - compatible 93 94additionalProperties: false 95 96allOf: 97 - $ref: bluetooth-controller.yaml# 98 - if: 99 properties: 100 compatible: 101 contains: 102 enum: 103 - qcom,qca2066-bt 104 - qcom,qca6174-bt 105 then: 106 required: 107 - enable-gpios 108 - clocks 109 110 - if: 111 properties: 112 compatible: 113 contains: 114 enum: 115 - qcom,wcn3988-bt 116 - qcom,wcn3990-bt 117 - qcom,wcn3991-bt 118 - qcom,wcn3998-bt 119 then: 120 required: 121 - vddio-supply 122 - vddxo-supply 123 - vddrf-supply 124 - vddch0-supply 125 126 - if: 127 properties: 128 compatible: 129 contains: 130 enum: 131 - qcom,wcn6750-bt 132 then: 133 required: 134 - enable-gpios 135 - swctrl-gpios 136 - vddio-supply 137 - vddaon-supply 138 - vddbtcxmx-supply 139 - vddrfacmn-supply 140 - vddrfa0p8-supply 141 - vddrfa1p7-supply 142 - vddrfa1p2-supply 143 - vddasd-supply 144 - if: 145 properties: 146 compatible: 147 contains: 148 enum: 149 - qcom,wcn6855-bt 150 then: 151 required: 152 - enable-gpios 153 - swctrl-gpios 154 - vddio-supply 155 - vddbtcxmx-supply 156 - vddrfacmn-supply 157 - vddrfa0p8-supply 158 - vddrfa1p2-supply 159 - vddrfa1p7-supply 160 161examples: 162 - | 163 #include <dt-bindings/gpio/gpio.h> 164 serial { 165 166 bluetooth { 167 compatible = "qcom,qca6174-bt"; 168 enable-gpios = <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>; 169 clocks = <&divclk4>; 170 firmware-name = "nvm_00440302.bin"; 171 }; 172 }; 173 - | 174 serial { 175 176 bluetooth { 177 compatible = "qcom,wcn3990-bt"; 178 vddio-supply = <&vreg_s4a_1p8>; 179 vddxo-supply = <&vreg_l7a_1p8>; 180 vddrf-supply = <&vreg_l17a_1p3>; 181 vddch0-supply = <&vreg_l25a_3p3>; 182 max-speed = <3200000>; 183 firmware-name = "crnv21.bin"; 184 }; 185 }; 186 - | 187 serial { 188 189 bluetooth { 190 compatible = "qcom,wcn6750-bt"; 191 pinctrl-names = "default"; 192 pinctrl-0 = <&bt_en_default>; 193 enable-gpios = <&tlmm 85 GPIO_ACTIVE_HIGH>; 194 swctrl-gpios = <&tlmm 86 GPIO_ACTIVE_HIGH>; 195 vddio-supply = <&vreg_l19b_1p8>; 196 vddaon-supply = <&vreg_s7b_0p9>; 197 vddbtcxmx-supply = <&vreg_s7b_0p9>; 198 vddrfacmn-supply = <&vreg_s7b_0p9>; 199 vddrfa0p8-supply = <&vreg_s7b_0p9>; 200 vddrfa1p7-supply = <&vreg_s1b_1p8>; 201 vddrfa1p2-supply = <&vreg_s8b_1p2>; 202 vddrfa2p2-supply = <&vreg_s1c_2p2>; 203 vddasd-supply = <&vreg_l11c_2p8>; 204 max-speed = <3200000>; 205 firmware-name = "msnv11.bin"; 206 }; 207 }; 208