Documentation/devicetree/bindings/net/bluetooth/mediatek,bluetooth.txt

Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/net/bluetooth/mediatek,bluetooth.txt

File Facts

System
Linux kernel
Corpus path
Documentation/devicetree/bindings/net/bluetooth/mediatek,bluetooth.txt
Extension
.txt
Size
2619 bytes
Lines
81
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: documentation
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

MediaTek UART based Bluetooth Devices
==================================

This device is a serial attached device to UART device and thus it must be a
child node of the serial node with UART.

Please refer to the following documents for generic properties:

	Documentation/devicetree/bindings/serial/serial.yaml

Required properties:

- compatible:	Must be
		  "mediatek,mt7663u-bluetooth": for MT7663U device
		  "mediatek,mt7668u-bluetooth": for MT7668U device
- vcc-supply:	Main voltage regulator

If the pin controller on the platform can support both pinmux and GPIO
control such as the most of MediaTek platform. Please use below properties.

- pinctrl-names: Should be "default", "runtime"
- pinctrl-0: Should contain UART RXD low when the device is powered up to
	     enter proper bootstrap mode.
- pinctrl-1: Should contain UART mode pin ctrl

Else, the pin controller on the platform only can support pinmux control and
the GPIO control still has to rely on the dedicated GPIO controller such as
a legacy MediaTek SoC, MT7621. Please use the below properties.

- boot-gpios:	GPIO same to the pin as UART RXD and used to keep LOW when
		the device is powered up to enter proper bootstrap mode when
- pinctrl-names: Should be "default"
- pinctrl-0: Should contain UART mode pin ctrl

Optional properties:

- reset-gpios:	GPIO used to reset the device whose initial state keeps low,
		if the GPIO is missing, then board-level design should be
		guaranteed.
- clocks:	Should be the clock specifiers corresponding to the entry in
		clock-names property. If the clock is missing, then board-level
		design should be guaranteed.
- clock-names:	Should contain "osc" entry for the external oscillator.
- current-speed:  Current baud rate of the device whose defaults to 921600

Example:

	uart1_pins_boot: uart1-default {
		pins-dat {
			pinmux = <MT7623_PIN_81_URXD1_FUNC_GPIO81>;
			output-low;
		};
	};

	uart1_pins_runtime: uart1-runtime {
		pins-dat {
			pinmux = <MT7623_PIN_81_URXD1_FUNC_URXD1>,
				 <MT7623_PIN_82_UTXD1_FUNC_UTXD1>;
		};
	};

	uart1: serial@11003000 {
		compatible = "mediatek,mt7623-uart",
			     "mediatek,mt6577-uart";
		reg = <0 0x11003000 0 0x400>;
		interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_LOW>;
		clocks = <&pericfg CLK_PERI_UART1_SEL>,
			 <&pericfg CLK_PERI_UART1>;
		clock-names = "baud", "bus";

Annotation

Implementation Notes