^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) Texas Instruments 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 TI Bluetooth devices. The following chips are included in this
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) binding:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) * TI CC256x Bluetooth devices
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) * TI WiLink 7/8 (wl12xx/wl18xx) Shared Transport BT/FM/GPS devices
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) TI WiLink devices have a UART interface for providing Bluetooth, FM radio,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) and GPS over what's called "shared transport". The shared transport is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) standard BT HCI protocol with additional channels for the other functions.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) TI WiLink devices also have a separate WiFi interface as described in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) wireless/ti,wlcore.txt.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) This bindings follows the UART slave device binding in ../serial/serial.yaml.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) Required properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) - compatible: should be one of the following:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) "ti,cc2560"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) "ti,wl1271-st"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) "ti,wl1273-st"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) "ti,wl1281-st"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) "ti,wl1283-st"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) "ti,wl1285-st"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) "ti,wl1801-st"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) "ti,wl1805-st"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) "ti,wl1807-st"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) "ti,wl1831-st"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) "ti,wl1835-st"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) "ti,wl1837-st"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) Optional properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) - enable-gpios : GPIO signal controlling enabling of BT. Active high.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) - vio-supply : Vio input supply (1.8V)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) - vbat-supply : Vbat input supply (2.9-4.8V)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) - clocks : Must contain an entry, for each entry in clock-names.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) See ../clocks/clock-bindings.txt for details.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) - clock-names : Must include the following entry:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) "ext_clock" (External clock provided to the TI combo chip).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) - nvmem-cells: phandle to nvmem data cell that contains a 6 byte BD address
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) with the most significant byte first (big-endian).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) - nvmem-cell-names: "bd-address" (required when nvmem-cells is specified)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) Example:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) &serial0 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) compatible = "ns16550a";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) ...
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) bluetooth {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) compatible = "ti,wl1835-st";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) enable-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) clocks = <&clk32k_wl18xx>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) clock-names = "ext_clock";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) nvmem-cells = <&bd_address>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) nvmem-cell-names = "bd-address";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) };