Re: [PATCH 1/3] dt-bindings: connector: Add PCIe M.2 Mechanical Key B connector

From: Rob Herring

Date: Fri Oct 30 2026 - 13:44:58 EST


On Wed, Oct 21, 2026 at 07:21:22PM +0530, Krishna Chaitanya Chundru wrote:
> Add the devicetree binding for PCIe M.2 Mechanical Key B connector
> defined in the PCI Express M.2 Specification, r4.2, sec 3.2.19.1. This
> connector is used to attach WWAN Adapters to the host machine over
> interfaces such as PCIe, USB3.1 Gen1, SSIC, or USB 2.0, selected by the
> Adapter's configuration pins.
>
> The connector provides a primary power supply of 3.3V/VBAT, along with
> optional GPIO signals for WWAN-specific power/radio control:
> FULL_CARD_POWER_OFF#, RESET#, W_DISABLE1#/2#, WAKE_ON_WWAN#, and DPR.
>
> Signed-off-by: Krishna Chaitanya Chundru <krishna.chundru@xxxxxxxxxxxxxxxx>
> ---
> .../bindings/connector/pcie-m2-b-connector.yaml | 146 +++++++++++++++++++++
> MAINTAINERS | 1 +
> 2 files changed, 147 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/connector/pcie-m2-b-connector.yaml b/Documentation/devicetree/bindings/connector/pcie-m2-b-connector.yaml
> new file mode 100644
> index 000000000000..a7f4bcbc5119
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/connector/pcie-m2-b-connector.yaml
> @@ -0,0 +1,146 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/connector/pcie-m2-b-connector.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: PCIe M.2 Mechanical Key B Connector
> +
> +maintainers:
> + - Krishna Chaitanya Chundru <krishna.chundru@xxxxxxxxxxxxxxxx>
> +
> +description:
> + A PCIe M.2 B connector node represents a physical PCIe M.2 Mechanical Key B
> + connector. Mechanical Key B connectors are used to connect WWAN devices to
> + the host machine over interfaces like PCIe, USB3.1 Gen1, SSIC, or USB 2.0,
> + selected by the Adapter's configuration pins.
> +
> +properties:
> + compatible:
> + const: pcie-m2-b-connector
> +
> + vpcie3v3-supply:
> + description: A phandle to the regulator for the 3.3v/VBAT supply.
> +
> + full-card-power-off-gpios:
> + description: GPIO output to FULL_CARD_POWER_OFF# signal. This signal is
> + used by the host system to turn off the entire Adapter. Refer, PCI
> + Express M.2 Specification r4.0, sec 3.2.13.1 for more details.
> + maxItems: 1
> +
> + reset-gpios:
> + description: GPIO output to RESET# signal. This signal is used by the
> + host system to place the WWAN Adapter into a power-on reset condition.
> + Refer, PCI Express M.2 Specification r4.0, sec 3.2.13.2 for more
> + details.
> + maxItems: 1
> +
> + w-disable1-gpios:
> + description: GPIO output to W_DISABLE1# signal. This signal is used by
> + the host system to disable the WWAN radio on the Adapter. Refer, PCI
> + Express M.2 Specification r4.0, sec 3.1.12.3 for more details.
> + maxItems: 1
> +
> + w-disable2-gpios:
> + description: GPIO output to W_DISABLE2# signal (default function of
> + GPIO_10). This signal is used by the host system to disable a second
> + radio on the Adapter. Refer, PCI Express M.2 Specification r4.0,
> + sec 3.1.12.3 for more details.
> + maxItems: 1

On the pinouts I find, I only see 0 or 1 w_disable.

> +
> + wowwan-gpios:
> + description: GPIO input to WAKE_ON_WWAN# (WoWWAN#) signal. The Adapter
> + asserts this signal to wake up the host system. Refer, PCI Express M.2
> + Specification r4.0, sec 3.2.13.3.6 for more details.
> + maxItems: 1

Don't see this on any of them. There is an ALERT# signal.

> +
> + dpr-gpios:
> + description: GPIO output to the Dynamic Power Reduction (DPR) signal.
> + This signal is provided by a host system proximity sensor to the
> + Adapter to trigger a reduction in the radio transmit output power to
> + meet regulatory SAR requirements. Refer, PCI Express M.2 Specification
> + r4.0, sec 3.2.13.4 for more details.
> + maxItems: 1
> +
> + clocks:
> + description: 32.768 KHz Suspend Clock (SUSCLK) input from the host system to
> + the M.2 card. Refer, PCI Express M.2 Specification r4.0, sec 3.1.12.1 for
> + more details.
> + maxItems: 1
> +
> + ports:
> + $ref: /schemas/graph.yaml#/properties/ports
> + description: OF graph bindings modeling the interfaces exposed on the
> + connector. Since a single connector can have multiple interfaces, every
> + interface has an assigned OF graph port number as described below.
> +
> + properties:
> + port@0:
> + $ref: /schemas/graph.yaml#/properties/port
> + description: PCIe interface for WWAN
> +
> + port@1:
> + $ref: /schemas/graph.yaml#/properties/port
> + description: SSIC interface for WWAN
> +
> + port@2:
> + $ref: /schemas/graph.yaml#/properties/port
> + description: USB 2.0 interface for WWAN
> +
> + port@3:
> + $ref: /schemas/graph.yaml#/properties/port
> + description: USB3.1 Gen1 interface for WWAN

Port nodes are generally independent. Endpoints are muxed connections.
As SSIC and USB3 are the same pins, they should be the same port. You
could use endpoint numbering to define SSIC vs. USB3.

Rob