[PATCH 1/2] dt-bindings: net: bluetooth: Add MediaTek MT7921S SDIO Bluetooth

AngeloGioacchino Del Regno angelogioacchino.delregno at collabora.com
Fri Jan 26 01:12:48 PST 2024


Il 26/01/24 04:26, Chen-Yu Tsai ha scritto:
> On Thu, Jan 25, 2024 at 7:39 PM AngeloGioacchino Del Regno
> <angelogioacchino.delregno at collabora.com> 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 at mediatek.com>
>>> Signed-off-by: Chen-Yu Tsai <wenst at chromium.org>
>>> ---
>>>    .../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 at mediatek.com>
>>> +
>>> +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?

Eh yes, sorry - I edited that statement multiple times and that "for" stuck
there for reasons :-)

> 
>>     on typical M.2 Key-E modules this is the W_DISABLE2# pin.
> 
> Otherwise this looks better. Thanks.

You're welcome!

Cheers!

> 
> 
> ChenYu
> 
>> Cheers,
>> Angelo
>>
>>> +
>>> +required:
>>> +  - compatible
>>> +  - reg
>>> +
>>> +additionalProperties: false
>>> +
>>> +examples:
>>> +  - |
>>> +    mmc {
>>> +        #address-cells = <1>;
>>> +        #size-cells = <0>;
>>> +
>>> +        bluetooth at 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 at mediatek.com>
>>>    L:  linux-bluetooth at vger.kernel.org
>>>    L:  linux-mediatek at lists.infradead.org (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
>>>
>>





More information about the Linux-mediatek mailing list