^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) Qualcomm Bluetooth Chips
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) ---------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) This documents the binding structure and common properties for serial
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) attached Qualcomm devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) Serial attached Qualcomm devices shall be a child node of the host UART
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) device the slave device is attached to.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) Required properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) - compatible: should contain one of the following:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) * "qcom,qca6174-bt"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) * "qcom,qca9377-bt"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) * "qcom,wcn3990-bt"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) * "qcom,wcn3991-bt"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) * "qcom,wcn3998-bt"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) * "qcom,qca6390-bt"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) Optional properties for compatible string qcom,qca6174-bt:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) - enable-gpios: gpio specifier used to enable chip
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) - clocks: clock provided to the controller (SUSCLK_32KHZ)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) - firmware-name: specify the name of nvm firmware to load
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) Optional properties for compatible string qcom,qca9377-bt:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) - max-speed: see Documentation/devicetree/bindings/serial/serial.yaml
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) Required properties for compatible string qcom,wcn399x-bt:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) - vddio-supply: VDD_IO supply regulator handle.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) - vddxo-supply: VDD_XO supply regulator handle.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) - vddrf-supply: VDD_RF supply regulator handle.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) - vddch0-supply: VDD_CH0 supply regulator handle.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) Optional properties for compatible string qcom,wcn399x-bt:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) - max-speed: see Documentation/devicetree/bindings/serial/serial.yaml
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) - firmware-name: specify the name of nvm firmware to load
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) - clocks: clock provided to the controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) Examples:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) serial@7570000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) label = "BT-UART";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) status = "okay";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) bluetooth {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) compatible = "qcom,qca6174-bt";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) enable-gpios = <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) clocks = <&divclk4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) firmware-name = "nvm_00440302.bin";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) serial@898000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) bluetooth {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) compatible = "qcom,wcn3990-bt";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) vddio-supply = <&vreg_s4a_1p8>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) vddxo-supply = <&vreg_l7a_1p8>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) vddrf-supply = <&vreg_l17a_1p3>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) vddch0-supply = <&vreg_l25a_3p3>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) max-speed = <3200000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) firmware-name = "crnv21.bin";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) clocks = <&rpmhcc RPMH_RF_CLK2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) };