Re: [PATCH 1/2] dt-bindings: net: bluetooth: Add MediaTek MT7921S SDIO Bluetooth
From: Chen-Yu Tsai
Date: Thu Jan 25 2024 - 22:26:49 EST
On Thu, Jan 25, 2024 at 7:39 PM AngeloGioacchino Del Regno
<angelogioacchino.delregno@xxxxxxxxxxxxx> wrote:
>
> 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#
(facepalm)
> 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? :-)
The function itself is fully probable and the implementation doesn't make
use of the WiFi's reset line, so I don't see any reason to describe it?
I don't actually know what the reset line does in the chip hardware.
This patch is just described what is already used.
> > + 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;
connected to?
> on typical M.2 Key-E modules this is the W_DISABLE2# pin.
Otherwise this looks better. Thanks.
ChenYu
> 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
> >
>