xref: /linux/Documentation/devicetree/bindings/net/bluetooth/nxp,88w8987-bt.yaml (revision 8be4d31cb8aaeea27bde4b7ddb26e28a89062ebf)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/net/bluetooth/nxp,88w8987-bt.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: NXP Bluetooth chips
8
9description:
10  This binding describes UART-attached NXP bluetooth chips. These chips
11  are dual-radio chips supporting WiFi and Bluetooth. The bluetooth
12  works on standard H4 protocol over 4-wire UART. The RTS and CTS lines
13  are used during FW download. To enable power save mode, the host
14  asserts break signal over UART-TX line to put the chip into power save
15  state. De-asserting break wakes up the BT chip.
16
17maintainers:
18  - Neeraj Sanjay Kale <neeraj.sanjaykale@nxp.com>
19
20allOf:
21  - $ref: bluetooth-controller.yaml#
22
23properties:
24  compatible:
25    enum:
26      - nxp,88w8987-bt
27      - nxp,88w8997-bt
28
29  fw-init-baudrate:
30    $ref: /schemas/types.yaml#/definitions/uint32
31    default: 115200
32    description:
33      Chip baudrate after FW is downloaded and initialized.
34      This property depends on the module vendor's
35      configuration.
36
37  max-speed:
38    $ref: /schemas/types.yaml#/definitions/uint32
39    enum:
40      - 3000000
41      - 4000000
42    default: 3000000
43
44  firmware-name:
45    maxItems: 1
46
47  device-wakeup-gpios:
48    maxItems: 1
49    description:
50      Host-To-Chip power save mechanism is driven by this GPIO
51      connected to BT_WAKE_IN pin of the NXP chipset.
52
53  nxp,wakein-pin:
54    $ref: /schemas/types.yaml#/definitions/uint8
55    description:
56      The GPIO number of the NXP chipset used for BT_WAKE_IN.
57
58  interrupts:
59    maxItems: 1
60    description:
61      Host wakeup by falling edge interrupt on this pin which is
62      connected to BT_WAKE_OUT pin of the NXP chipset.
63
64  interrupt-names:
65    items:
66      - const: wakeup
67
68  wakeup-source: true
69
70  nxp,wakeout-pin:
71    $ref: /schemas/types.yaml#/definitions/uint8
72    description:
73      The GPIO number of the NXP chipset used for BT_WAKE_OUT.
74
75  vcc-supply:
76    description:
77      phandle of the regulator that provides the supply voltage.
78
79  reset-gpios:
80    description:
81      Chip powerdown/reset signal (PDn).
82
83required:
84  - compatible
85
86unevaluatedProperties: false
87
88examples:
89  - |
90    #include <dt-bindings/gpio/gpio.h>
91    #include <dt-bindings/interrupt-controller/irq.h>
92    serial {
93        bluetooth {
94            compatible = "nxp,88w8987-bt";
95            fw-init-baudrate = <3000000>;
96            max-speed = <4000000>;
97            firmware-name = "uartuart8987_bt_v0.bin";
98            device-wakeup-gpios = <&gpio 11 GPIO_ACTIVE_HIGH>;
99            nxp,wakein-pin = /bits/ 8 <18>;
100            nxp,wakeout-pin = /bits/ 8 <19>;
101            vcc-supply = <&nxp_iw612_supply>;
102            reset-gpios = <&gpioctrl 2 GPIO_ACTIVE_LOW>;
103            local-bd-address = [66 55 44 33 22 11];
104            interrupt-parent = <&gpio>;
105            interrupts = <8 IRQ_TYPE_EDGE_FALLING>;
106            interrupt-names = "wakeup";
107            wakeup-source;
108        };
109    };
110