summaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/net/qualcomm-bluetooth.txt
blob: 709ca6d51650f4466e12436e1c499736c51a5ec9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
Qualcomm Bluetooth Chips
---------------------

This documents the binding structure and common properties for serial
attached Qualcomm devices.

Serial attached Qualcomm devices shall be a child node of the host UART
device the slave device is attached to.

Required properties:
 - compatible: should contain one of the following:
   * "qcom,qca6174-bt"
   * "qcom,qca9377-bt"
   * "qcom,wcn3990-bt"
   * "qcom,wcn3991-bt"
   * "qcom,wcn3998-bt"
   * "qcom,qca6390-bt"

Optional properties for compatible string qcom,qca6174-bt:

 - enable-gpios: gpio specifier used to enable chip
 - clocks: clock provided to the controller (SUSCLK_32KHZ)
 - firmware-name: specify the name of nvm firmware to load

Optional properties for compatible string qcom,qca9377-bt:

 - max-speed: see Documentation/devicetree/bindings/serial/serial.yaml

Required properties for compatible string qcom,wcn399x-bt:

 - vddio-supply: VDD_IO supply regulator handle.
 - vddxo-supply: VDD_XO supply regulator handle.
 - vddrf-supply: VDD_RF supply regulator handle.
 - vddch0-supply: VDD_CH0 supply regulator handle.

Optional properties for compatible string qcom,wcn399x-bt:

 - max-speed: see Documentation/devicetree/bindings/serial/serial.yaml
 - firmware-name: specify the name of nvm firmware to load
 - clocks: clock provided to the controller

Examples:

serial@7570000 {
	label = "BT-UART";
	status = "okay";

	bluetooth {
		compatible = "qcom,qca6174-bt";

		enable-gpios = <&pm8994_gpios 19 GPIO_ACTIVE_HIGH>;
		clocks = <&divclk4>;
		firmware-name = "nvm_00440302.bin";
	};
};

serial@898000 {
	bluetooth {
		compatible = "qcom,wcn3990-bt";

		vddio-supply = <&vreg_s4a_1p8>;
		vddxo-supply = <&vreg_l7a_1p8>;
		vddrf-supply = <&vreg_l17a_1p3>;
		vddch0-supply = <&vreg_l25a_3p3>;
		max-speed = <3200000>;
		firmware-name = "crnv21.bin";
		clocks = <&rpmhcc RPMH_RF_CLK2>;
	};
};