On Wed, Apr 17, 2024 at 4:04 PM Sean Wang <sean.wang@xxxxxxxxxx> wrote: > > Hi Chen-Yu, > > On Fri, Apr 12, 2024 at 12:31 AM Chen-Yu Tsai <wenst@xxxxxxxxxxxx> wrote: > > > > The MediaTek MT7921S is a WiFi/Bluetooth combo chip that works over > > SDIO. WiFi and Bluetooth are separate SDIO functions within the chip. > > While the Bluetooth SDIO function is fully discoverable, the chip has > > a pin that can reset just the Bluetooth core, as opposed to the full > > chip. This should be described in the device tree. > > > > Add a device tree binding for the Bluetooth SDIO function of the MT7921S > > specifically to document the reset line. This binding is based on the MMC > > controller binding, which specifies one device node per SDIO function. > > > > Cc: Sean Wang <sean.wang@xxxxxxxxxxxx> > > Signed-off-by: Chen-Yu Tsai <wenst@xxxxxxxxxxxx> > > --- > > Changes since v2: > > - Expand description and commit message to clearly state that WiFi and > > Bluetooth are separate SDIO functions, and that each function should > > be a separate device node, as specified by the MMC binding. > > - Change 'additionalProperties' to 'unevaluatedProperties' > > - Add missing separating new line > > - s/ot/to/ > > > > Angelo's reviewed-by was not picked up due to the above changes. > > > > Changes since v1: > > - Reworded descriptions > > - Moved binding maintainer section before description > > - Added missing reference to bluetooth-controller.yaml > > - Added missing GPIO header to example > > --- > > .../bluetooth/mediatek,mt7921s-bluetooth.yaml | 55 +++++++++++++++++++ > > MAINTAINERS | 1 + > > 2 files changed, 56 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..67ff7caad599 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/net/bluetooth/mediatek,mt7921s-bluetooth.yaml > > @@ -0,0 +1,55 @@ > > +# 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 > > + > > +maintainers: > > + - Sean Wang <sean.wang@xxxxxxxxxxxx> > > + > > +description: > > + MT7921S is an SDIO-attached dual-radio WiFi+Bluetooth Combo chip; each > > + function is its own SDIO function on a shared SDIO interface. The chip > > + has two dedicated reset lines, one for each function core. > > + This binding only covers the Bluetooth SDIO function, with one device > > + node describing only this SDIO function. > > + > > +allOf: > > + - $ref: bluetooth-controller.yaml# > > + > > +properties: > > + compatible: > > + enum: > > + - mediatek,mt7921s-bluetooth > > + > > + reg: > > + const: 2 > > + > > + reset-gpios: > > + maxItems: 1 > > + description: > > + An active-low reset line for the Bluetooth core; on typical M.2 > > + key E modules this is the W_DISABLE2# pin. > > + > > Thanks for adding the new setup for the MT7921S devices. They look good to me. > Sometimes, the MT7921S might be set up to wake up the host when it's > asleep using a sideband signal. > This might need an extra pin called "wakeup" to make it happen. Can > you help add this pin to the settings in the same update, or should I > do it later? I suggest you send a patch on top of this one? I'm not sure if you would model it as a GPIO or interrupt. And there doesn't seem to be any code in the driver expecting it. ChenYu > > +required: > > + - compatible > > + - reg > > + > > +unevaluatedProperties: false > > + > > +examples: > > + - | > > + #include <dt-bindings/gpio/gpio.h> > > + > > + 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 88981d9f3958..218bc2a21207 100644 > > --- a/MAINTAINERS > > +++ b/MAINTAINERS > > @@ -13818,6 +13818,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 > > > > -- > > 2.44.0.683.g7961c838ac-goog > > > >