Re: [PATCH v4 1/4] dt-bindings: Add cros-ec Type C port driver

From: Prashant Malani
Date: Sun Mar 15 2020 - 18:05:41 EST


Hi Enric,

On Fri, Mar 13, 2020 at 05:26:19PM +0100, Enric Balletbo i Serra wrote:
> Hi Prashant,
>
> On 12/3/20 23:57, Prashant Malani wrote:
> > Some Chrome OS devices with Embedded Controllers (EC) can read and
> > modify Type C port state.
> >
> > Add an entry in the DT Bindings documentation that lists out the logical
> > device and describes the relevant port information, to be used by the
> > corresponding driver.
> >
> > Signed-off-by: Prashant Malani <pmalani@xxxxxxxxxxxx>
> > ---
> >
> > Changes in v4:
> > - Rebased on top of usb-connector.yaml file, so the ÃâÅconnectorÃâ property
> > now directly references the ÃâÅusb-connectorÃâ DT binding.
> >
> > Changes in v3:
> > - Fixed license identifier.
> > - Renamed "port" to "connector".
> > - Made "connector" be a "usb-c-connector" compatible property.
> > - Updated port-number description to explain min and max values,
> > and removed $ref which was causing dt_binding_check errors.
> > - Fixed power-role, data-role and try-power-role details to make
> > dt_binding_check pass.
> > - Fixed example to include parent EC SPI DT Node.
> >
> > Changes in v2:
> > - No changes. Patch first introduced in v2 of series.
> >
> > .../bindings/chrome/google,cros-ec-typec.yaml | 48 +++++++++++++++++++
> > 1 file changed, 48 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/chrome/google,cros-ec-typec.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/chrome/google,cros-ec-typec.yaml b/Documentation/devicetree/bindings/chrome/google,cros-ec-typec.yaml
> > new file mode 100644
> > index 0000000000000..6668d678dbcb4
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/chrome/google,cros-ec-typec.yaml
> > @@ -0,0 +1,48 @@
> > +# SPDX-License-Identifier: GPL-2.0-only
>
> Could you use dual licensing here (GPL-2.0-only OR BSD-2-Clause). In general
> Google is fine with it for bindings.
>
Sure, Will do.
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/chrome/google,cros-ec-typec.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Google Chrome OS EC(Embedded Controller) Type C port driver.
> > +
> > +maintainers:
> > + - Benson Leung <bleung@xxxxxxxxxxxx>
> > + - Prashant Malani <pmalani@xxxxxxxxxxxx>
> > +
> > +description:
> > + Chrome OS devices have an Embedded Controller(EC) which has access to
> > + Type C port state. This node is intended to allow the host to read and
> > + control the Type C ports. The node for this device should be under a
> > + cros-ec node like google,cros-ec-spi.
> > +
> > +properties:
> > + compatible:
> > + const: google,cros-ec-typec
> > +
> > + connector:
> > + $ref: /schemas/connector/usb-connector.yaml#
> > +
> > +required:
> > + - compatible
> > +
> > +examples:
> > + - |+
> > + cros_ec: ec {
> > + compatible = "google,cros-ec-spi";
> > +
>
> I guess that it will trigger some warnings once google,cros-ec.yaml is merged.
> Use a full example.
Thanks, will make this modification in the next version.
>
> +examples:
> + - |
> + spi0 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + cros-ec@0 {
> + compatible = "google,cros-ec-spi";
> + reg = <0>;
>
>
> > + typec {
> > + compatible = "google,cros-ec-typec";
> > +
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + connector@0 {
> > + compatible = "usb-c-connector";
> > + reg = <0>;
> > + power-role = "dual";
> > + data-role = "dual";
> > + try-power-role = "source";
> > + };
> > + };
> > + };
> >