M7350/kernel/Documentation/devicetree/bindings/bluetooth/bluesleep.txt

42 lines
1.6 KiB
Plaintext
Raw Normal View History

2024-09-09 08:52:07 +00:00
* Bluetooth Sleep Protocol driver
Bluetooth controller communicates with the Bluetooth Host using HCI Transport layer.
HCI Transport layer can be based on UART or USB serial communication protocol.
Apart from the transport layer, Bluetooth Controller also supports Low Power Mode
using various mechanisms. One of such mechanism is Out-of-Band Sleep. Also known
as 2-wire sleep mechanism.
Out-of-Band Sleep:
It requires two GPIOs to communicate the sleep protocol between Host and Controller.
One of them is called as Host Wake GPIO where as other is known as a External wake
GPIO.
Host Wake GPIO is used for awake the Host from the Sleep Mode. It is controlled by the
Controller. It should be wakeup interruptible source on the Host.
External Wake GPIO is used for awake the Controller from the Sleep Mode. It is controlled
by the Host.
Required Properties:
- compatible: Should be "qca,ar3002_bluesleep"
- host-wake-gpio: Specify GPIO for Host wake signal (Controller -> Host).
- ext-wake-gpio: Specify GPIO for Controller wake signal(Host -> Controller).
- interrupt-parent: Should be phandle for the interrupt controller
that services interrupts for this device.
- interrupts: Should contain host wake interrupt from controller.
- interrupt-names: indicates interrupts passed to driver
(via interrupts property) by name. "host_wake" is mandatory.
Optional Properties:
None
Example:
bt_sleep {
compatible = "qca,ar3002_bluesleep";
host-wake-gpio = <&msmgpio 12 0>;
ext-wake-gpio = <&msmgpio 13 0>;
interrupt-parent = <&msmgpio>;
interrupts = <12 0>;
interrupt-names = "host_wake";
};