Merge tag 'asm-generic-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd...
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / net / broadcom-bluetooth.yaml
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/net/broadcom-bluetooth.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Broadcom Bluetooth Chips
8
9 maintainers:
10   - Linus Walleij <linus.walleij@linaro.org>
11
12 description:
13   This binding describes Broadcom UART-attached bluetooth chips.
14
15 properties:
16   compatible:
17     enum:
18       - brcm,bcm20702a1
19       - brcm,bcm4329-bt
20       - brcm,bcm4330-bt
21       - brcm,bcm4334-bt
22       - brcm,bcm43438-bt
23       - brcm,bcm4345c5
24       - brcm,bcm43540-bt
25       - brcm,bcm4335a0
26
27   shutdown-gpios:
28     maxItems: 1
29     description: GPIO specifier for the line BT_REG_ON used to
30       power on the BT module
31
32   reset-gpios:
33     maxItems: 1
34     description: GPIO specifier for the line BT_RST_N used to
35       reset the BT module. This should be marked as
36       GPIO_ACTIVE_LOW.
37
38   device-wakeup-gpios:
39     maxItems: 1
40     description: GPIO specifier for the line BT_WAKE used to
41       wakeup the controller. This is using the BT_GPIO_0
42       pin on the chip when in use.
43
44   host-wakeup-gpios:
45     maxItems: 1
46     deprecated: true
47     description: GPIO specifier for the line HOST_WAKE used
48       to wakeup the host processor. This is using he BT_GPIO_1
49       pin on the chip when in use. This is deprecated and replaced
50       by interrupts and "host-wakeup" interrupt-names
51
52   clocks:
53     maxItems: 2
54     description: 1 or 2 clocks as defined in clock-names below,
55       in that order
56
57   clock-names:
58     description: Names of the 1 to 2 supplied clocks
59     items:
60       - const: txco
61       - const: lpo
62       - const: extclk
63
64   vbat-supply:
65     description: phandle to regulator supply for VBAT
66
67   vddio-supply:
68     description: phandle to regulator supply for VDDIO
69
70   brcm,bt-pcm-int-params:
71     $ref: /schemas/types.yaml#/definitions/uint8-array
72     minItems: 5
73     maxItems: 5
74     description: |-
75       configure PCM parameters via a 5-byte array:
76        sco-routing: 0 = PCM, 1 = Transport, 2 = Codec, 3 = I2S
77        pcm-interface-rate: 128KBps, 256KBps, 512KBps, 1024KBps, 2048KBps
78        pcm-frame-type: short, long
79        pcm-sync-mode: slave, master
80        pcm-clock-mode: slave, master
81
82   interrupts:
83     items:
84       - description: Handle to the line HOST_WAKE used to wake
85           up the host processor. This uses the BT_GPIO_1 pin on
86           the chip when in use.
87
88   interrupt-names:
89     items:
90       - const: host-wakeup
91
92   max-speed: true
93   current-speed: true
94
95 required:
96   - compatible
97
98 additionalProperties: false
99
100 examples:
101   - |
102     #include <dt-bindings/gpio/gpio.h>
103     #include <dt-bindings/interrupt-controller/irq.h>
104
105     uart {
106         uart-has-rtscts;
107
108         bluetooth {
109             compatible = "brcm,bcm4330-bt";
110             max-speed = <921600>;
111             brcm,bt-pcm-int-params = [01 02 00 01 01];
112             shutdown-gpios = <&gpio 30 GPIO_ACTIVE_HIGH>;
113             device-wakeup-gpios = <&gpio 7 GPIO_ACTIVE_HIGH>;
114             reset-gpios = <&gpio 9 GPIO_ACTIVE_LOW>;
115             interrupt-parent = <&gpio>;
116             interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
117         };
118     };