Il 25/01/24 10:52, Chen-Yu Tsai ha scritto:
The MediaTek MT7921S is a WiFi/Bluetooth combo chip that works over SDIO. While the Bluetooth function is fully discoverable, the chip has a pin that can reset just the Bluetooth side, as opposed to the full chip. This needs to be described in the device tree. Add a device tree binding for MT7921S Bluetooth over SDIO specifically ot document the reset line. Cc: Sean Wang <sean.wang@xxxxxxxxxxxx> Signed-off-by: Chen-Yu Tsai <wenst@xxxxxxxxxxxx> --- .../bluetooth/mediatek,mt7921s-bluetooth.yaml | 49 +++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 50 insertions(+) create mode 100644 Documentation/devicetree/bindings/net/bluetooth/mediatek,mt7921s-bluetooth.yaml diff --git a/Documentation/devicetree/bindings/net/bluetooth/mediatek,mt7921s-bluetooth.yaml b/Documentation/devicetree/bindings/net/bluetooth/mediatek,mt7921s-bluetooth.yaml new file mode 100644 index 000000000000..bbe240e7cc40 --- /dev/null +++ b/Documentation/devicetree/bindings/net/bluetooth/mediatek,mt7921s-bluetooth.yaml @@ -0,0 +1,49 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/bluetooth/mediatek,mt7921s-bluetooth.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: MediaTek MT7921S Bluetooth +
title: maintainers: description: ... and then, you missed allOf: - $ref: bluetooth-controller.yaml# Everything else looks good. Cheers, Angelo
+description:
MT7921S is a (dual?) SDIO-attached dual-radio WiFi+Bluetooth combo chip; this chip has two dedicated reset lines, one of which is used to reset the Bluetooth core. The WiFi part of this chip is described in ....where? :-)
+ This binding describes the Bluetooth side of the SDIO-attached MT7921S + WiFi+Bluetooth combo chips. These chips are dual-radio chips supporting + WiFi and Bluetooth. Bluetooth works over SDIO just like WiFi. Bluetooth + has its own reset line, separate from WiFi, which can be used to reset + the Bluetooth core. + +maintainers: + - Sean Wang <sean.wang@xxxxxxxxxxxx> + +properties: + compatible: + enum: + - mediatek,mt7921s-bluetooth + reg: + const: 2 + + reset-gpios: + maxItems: 1 + description: A GPIO line connected to the Bluetooth subsystem reset line. + Typically the W_DISABLE2# pin on M.2 E-key modules. If present this + shall be flagged as active low.
description: An active-low reset line connected for the Bluetooth core; on typical M.2 Key-E modules this is the W_DISABLE2# pin. Cheers, Angelo
+ +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + mmc { + #address-cells = <1>; + #size-cells = <0>; + + bluetooth@2 { + compatible = "mediatek,mt7921s-bluetooth"; + reg = <2>; + reset-gpios = <&pio 8 GPIO_ACTIVE_LOW>; + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index b64a64ca7916..662957146852 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -13657,6 +13657,7 @@ M: Sean Wang <sean.wang@xxxxxxxxxxxx> L: linux-bluetooth@xxxxxxxxxxxxxxx L: linux-mediatek@xxxxxxxxxxxxxxxxxxx (moderated for non-subscribers) S: Maintained +F: Documentation/devicetree/bindings/net/bluetooth/mediatek,mt7921s-bluetooth.yaml F: Documentation/devicetree/bindings/net/mediatek-bluetooth.txt F: drivers/bluetooth/btmtkuart.c