1bb171271SGeert Uytterhoeven# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2bb171271SGeert Uytterhoeven%YAML 1.2
3bb171271SGeert Uytterhoeven---
4bb171271SGeert Uytterhoeven$id: http://devicetree.org/schemas/net/ti,bluetooth.yaml#
5bb171271SGeert Uytterhoeven$schema: http://devicetree.org/meta-schemas/core.yaml#
6bb171271SGeert Uytterhoeven
7bb171271SGeert Uytterhoeventitle: Texas Instruments Bluetooth Chips
8bb171271SGeert Uytterhoeven
9bb171271SGeert Uytterhoevenmaintainers:
10bb171271SGeert Uytterhoeven  - David Lechner <david@lechnology.com>
11bb171271SGeert Uytterhoeven
12bb171271SGeert Uytterhoevendescription: |
13bb171271SGeert Uytterhoeven  This documents the binding structure and common properties for serial
14bb171271SGeert Uytterhoeven  attached TI Bluetooth devices. The following chips are included in this
15bb171271SGeert Uytterhoeven  binding:
16bb171271SGeert Uytterhoeven
17bb171271SGeert Uytterhoeven  * TI CC256x Bluetooth devices
18bb171271SGeert Uytterhoeven  * TI WiLink 7/8 (wl12xx/wl18xx) Shared Transport BT/FM/GPS devices
19bb171271SGeert Uytterhoeven
20bb171271SGeert Uytterhoeven  TI WiLink devices have a UART interface for providing Bluetooth, FM radio,
21bb171271SGeert Uytterhoeven  and GPS over what's called "shared transport". The shared transport is
22bb171271SGeert Uytterhoeven  standard BT HCI protocol with additional channels for the other functions.
23bb171271SGeert Uytterhoeven
24bb171271SGeert Uytterhoeven  TI WiLink devices also have a separate WiFi interface as described in
25bb171271SGeert Uytterhoeven  wireless/ti,wlcore.yaml.
26bb171271SGeert Uytterhoeven
27bb171271SGeert Uytterhoeven  This bindings follows the UART slave device binding in ../serial/serial.yaml.
28bb171271SGeert Uytterhoeven
29bb171271SGeert Uytterhoevenproperties:
30bb171271SGeert Uytterhoeven  compatible:
31bb171271SGeert Uytterhoeven    enum:
32bb171271SGeert Uytterhoeven      - ti,cc2560
33bb171271SGeert Uytterhoeven      - ti,wl1271-st
34bb171271SGeert Uytterhoeven      - ti,wl1273-st
35bb171271SGeert Uytterhoeven      - ti,wl1281-st
36bb171271SGeert Uytterhoeven      - ti,wl1283-st
37bb171271SGeert Uytterhoeven      - ti,wl1285-st
38bb171271SGeert Uytterhoeven      - ti,wl1801-st
39bb171271SGeert Uytterhoeven      - ti,wl1805-st
40bb171271SGeert Uytterhoeven      - ti,wl1807-st
41bb171271SGeert Uytterhoeven      - ti,wl1831-st
42bb171271SGeert Uytterhoeven      - ti,wl1835-st
43bb171271SGeert Uytterhoeven      - ti,wl1837-st
44bb171271SGeert Uytterhoeven
45bb171271SGeert Uytterhoeven  enable-gpios:
46bb171271SGeert Uytterhoeven    maxItems: 1
47bb171271SGeert Uytterhoeven
48bb171271SGeert Uytterhoeven  vio-supply:
49bb171271SGeert Uytterhoeven    description: Vio input supply (1.8V)
50bb171271SGeert Uytterhoeven
51bb171271SGeert Uytterhoeven  vbat-supply:
52bb171271SGeert Uytterhoeven    description: Vbat input supply (2.9-4.8V)
53bb171271SGeert Uytterhoeven
54bb171271SGeert Uytterhoeven  clocks:
55bb171271SGeert Uytterhoeven    maxItems: 1
56bb171271SGeert Uytterhoeven
57bb171271SGeert Uytterhoeven  clock-names:
58bb171271SGeert Uytterhoeven    items:
59bb171271SGeert Uytterhoeven      - const: ext_clock
60bb171271SGeert Uytterhoeven
61*4c7a7d50SGeert Uytterhoeven  max-speed:
62*4c7a7d50SGeert Uytterhoeven    default: 3000000
63bb171271SGeert Uytterhoeven
64bb171271SGeert Uytterhoeven  nvmem-cells:
65bb171271SGeert Uytterhoeven    maxItems: 1
66bb171271SGeert Uytterhoeven    description:
67bb171271SGeert Uytterhoeven      Nvmem data cell that contains a 6 byte BD address with the most
68bb171271SGeert Uytterhoeven      significant byte first (big-endian).
69bb171271SGeert Uytterhoeven
70bb171271SGeert Uytterhoeven  nvmem-cell-names:
71bb171271SGeert Uytterhoeven    items:
72bb171271SGeert Uytterhoeven      - const: bd-address
73bb171271SGeert Uytterhoeven
74bb171271SGeert Uytterhoevenrequired:
75bb171271SGeert Uytterhoeven  - compatible
76bb171271SGeert Uytterhoeven
77bb171271SGeert UytterhoevenadditionalProperties: false
78bb171271SGeert Uytterhoeven
79bb171271SGeert Uytterhoevenexamples:
80bb171271SGeert Uytterhoeven  - |
81bb171271SGeert Uytterhoeven    #include <dt-bindings/gpio/gpio.h>
82bb171271SGeert Uytterhoeven
83bb171271SGeert Uytterhoeven    serial {
84bb171271SGeert Uytterhoeven            bluetooth {
85bb171271SGeert Uytterhoeven                    compatible = "ti,wl1835-st";
86bb171271SGeert Uytterhoeven                    enable-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
87bb171271SGeert Uytterhoeven                    clocks = <&clk32k_wl18xx>;
88bb171271SGeert Uytterhoeven                    clock-names = "ext_clock";
89bb171271SGeert Uytterhoeven                    nvmem-cells = <&bd_address>;
90bb171271SGeert Uytterhoeven                    nvmem-cell-names = "bd-address";
91bb171271SGeert Uytterhoeven            };
92bb171271SGeert Uytterhoeven    };
93