Re: [PATCH v2 1/3] dt-bindings: chrome: Add Cros EC UCSI driver

From: Benson Leung

Date: Tue Oct 07 2025 - 15:23:54 EST


On Wed, Oct 01, 2025 at 07:33:41PM +0000, Jameson Thies wrote:
> Chrome OS devices with PDCs allow the host to read port status and
> control port behavior with UCSI commands sent to the embedded controller
> (EC). Add documentation for cros-ec-ucsi node which loads the Chrome OS
> UCSI driver.
>
> Signed-off-by: Jameson Thies <jthies@xxxxxxxxxx>

Reviewed-by: Benson Leung <bleung@xxxxxxxxxxxx>


> ---
> .../bindings/chrome/google,cros-ec-ucsi.yaml | 71 +++++++++++++++++++
> .../bindings/mfd/google,cros-ec.yaml | 4 +-
> 2 files changed, 74 insertions(+), 1 deletion(-)
> create mode 100644 Documentation/devicetree/bindings/chrome/google,cros-ec-ucsi.yaml
>
> diff --git a/Documentation/devicetree/bindings/chrome/google,cros-ec-ucsi.yaml b/Documentation/devicetree/bindings/chrome/google,cros-ec-ucsi.yaml
> new file mode 100644
> index 000000000000..2121776e3ff0
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/chrome/google,cros-ec-ucsi.yaml
> @@ -0,0 +1,71 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/chrome/google,cros-ec-ucsi.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Google Chrome OS EC(Embedded Controller) UCSI driver.
> +
> +maintainers:
> + - Abhishek Pandit-Subedi <abhishekpandit@xxxxxxxxxxxx>
> + - Andrei Kuchynski <akuchynski@xxxxxxxxxxxx>
> + - Benson Leung <bleung@xxxxxxxxxxxx>
> + - Jameson Thies <jthies@xxxxxxxxxx>
> + - Łukasz Bartosik <ukaszb@xxxxxxxxxxxx>
> +
> +description:
> + Chrome OS devices with PDC-based USB-C ports expose a UCSI interface
> + from the Embedded Controller (EC) which allows the host to request
> + port state and control limited port behavior (DR/PR swap). This node
> + allows the host UCSI driver to send and receive UCSI commands to a
> + Chrome OS EC. The node for this device should be under a cros-ec node
> + like google,cros-ec-spi.
> +
> +properties:
> + compatible:
> + const: google,cros-ec-ucsi
> +
> + '#address-cells':
> + const: 1
> +
> + '#size-cells':
> + const: 0
> +
> +patternProperties:
> + '^connector@[0-9a-f]+$':
> + $ref: /schemas/connector/usb-connector.yaml#
> + required:
> + - reg
> +
> +required:
> + - compatible
> +
> +additionalProperties: false
> +
> +examples:
> + - |+
> + spi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + cros_ec: ec@0 {
> + compatible = "google,cros-ec-spi";
> + reg = <0>;
> + interrupts = <35 0>;
> +
> + typec {
> + compatible = "google,cros-ec-ucsi";
> +
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + connector@0 {
> + compatible = "usb-c-connector";
> + reg = <0>;
> + power-role = "dual";
> + data-role = "dual";
> + try-power-role = "source";
> + };
> + };
> + };
> + };
> diff --git a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml
> index 50f457090066..646bc81c526f 100644
> --- a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml
> +++ b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml
> @@ -99,7 +99,9 @@ properties:
> gpio-controller: true
>
> typec:
> - $ref: /schemas/chrome/google,cros-ec-typec.yaml#
> + oneOf:
> + - $ref: /schemas/chrome/google,cros-ec-typec.yaml#
> + - $ref: /schemas/chrome/google,cros-ec-ucsi.yaml#
>
> ec-pwm:
> $ref: /schemas/pwm/google,cros-ec-pwm.yaml#
> --
> 2.51.0.618.g983fd99d29-goog
>

Attachment: signature.asc
Description: PGP signature