On Fri, Feb 09, 2024 at 11:09:12PM -0800, Stephen Boyd wrote: > The ChromeOS embedded controller (EC) supports setting the state of > GPIOs when the system is unlocked, and getting the state of GPIOs in all > cases. The GPIOs are on the EC itself, so the EC acts similar to a GPIO > expander. Add a binding to describe these GPIOs in DT so that other > devices described in DT can read the GPIOs on the EC. > > Cc: Linus Walleij <linus.walleij@xxxxxxxxxx> > Cc: Bartosz Golaszewski <brgl@xxxxxxxx> > Cc: Rob Herring <robh+dt@xxxxxxxxxx> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@xxxxxxxxxx> > Cc: Conor Dooley <conor+dt@xxxxxxxxxx> > Cc: Lee Jones <lee@xxxxxxxxxx> > Cc: Benson Leung <bleung@xxxxxxxxxxxx> > Cc: Guenter Roeck <groeck@xxxxxxxxxxxx> > Cc: <linux-gpio@xxxxxxxxxxxxxxx> > Cc: <devicetree@xxxxxxxxxxxxxxx> > Cc: <chrome-platform@xxxxxxxxxxxxxxx> > Cc: Pin-yen Lin <treapking@xxxxxxxxxxxx> > Signed-off-by: Stephen Boyd <swboyd@xxxxxxxxxxxx> > --- > .../bindings/gpio/google,cros-ec-gpio.yaml | 49 +++++++++++++++++++ > .../bindings/mfd/google,cros-ec.yaml | 3 ++ > 2 files changed, 52 insertions(+) > create mode 100644 Documentation/devicetree/bindings/gpio/google,cros-ec-gpio.yaml > > diff --git a/Documentation/devicetree/bindings/gpio/google,cros-ec-gpio.yaml b/Documentation/devicetree/bindings/gpio/google,cros-ec-gpio.yaml > new file mode 100644 > index 000000000000..a9f1d7784070 > --- /dev/null > +++ b/Documentation/devicetree/bindings/gpio/google,cros-ec-gpio.yaml > @@ -0,0 +1,49 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/gpio/google,cros-ec-gpio.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: GPIOs controlled by ChromeOS EC > + > +maintainers: > + - Stephen Boyd <swboyd@xxxxxxxxxxxx> > + > +description: > + Google's ChromeOS EC has a gpio controller inside the Embedded Controller > + (EC) and controlled via a host-command interface. The node for this > + device should be under a cros-ec node like google,cros-ec-spi. Why do we need a child node here? Rob