Message ID | 20210202184434.42644-3-swboyd@chromium.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | iio: Add a ChromeOS EC MKBP proximity driver | expand |
Hi Stephen, Missatge de Stephen Boyd <swboyd@chromium.org> del dia dt., 2 de febr. 2021 a les 19:53: > > Some cros ECs support a front proximity MKBP event via > 'EC_MKBP_FRONT_PROXIMITY'. Add a DT binding to document this feature via > a node that is a child of the main cros_ec device node. Devices that > have this ability will describe this in firmware. > > Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> > Cc: Benson Leung <bleung@chromium.org> > Cc: Guenter Roeck <groeck@chromium.org> > Cc: Douglas Anderson <dianders@chromium.org> > Cc: Gwendal Grignou <gwendal@chromium.org> > Cc: <devicetree@vger.kernel.org> > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Enric Balletbo i Serra <enric.balletbo@collabora.com> > Signed-off-by: Stephen Boyd <swboyd@chromium.org> Thanks for adding a full example, IIRC this is preferred by Rob and we are also trying to apply this rule on all the cros-ec related bindings, so the dt_bindings_check really checks a full example. From my side looks good to me. Reviewed-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> > --- > .../google,cros-ec-mkbp-proximity.yaml | 46 +++++++++++++++++++ > .../bindings/mfd/google,cros-ec.yaml | 3 ++ > 2 files changed, 49 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/proximity/google,cros-ec-mkbp-proximity.yaml > > diff --git a/Documentation/devicetree/bindings/iio/proximity/google,cros-ec-mkbp-proximity.yaml b/Documentation/devicetree/bindings/iio/proximity/google,cros-ec-mkbp-proximity.yaml > new file mode 100644 > index 000000000000..d82b929af445 > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/proximity/google,cros-ec-mkbp-proximity.yaml > @@ -0,0 +1,46 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > + > +$id: http://devicetree.org/schemas/iio/proximity/google,cros-ec-mkbp-proximity.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: ChromeOS EC MKBP Proximity Sensor > + > +maintainers: > + - Stephen Boyd <swboyd@chromium.org> > + - Benson Leung <bleung@chromium.org> > + - Enric Balletbo i Serra <enric.balletbo@collabora.com> > + > +description: | > + Google's ChromeOS EC sometimes has the ability to detect user proximity. > + This is implemented on the EC as near/far logic and exposed to the OS > + via an MKBP switch bit. > + > +properties: > + compatible: > + const: google,cros-ec-mkbp-proximity > + > + label: > + description: Name for proximity sensor > + > +required: > + - compatible > + > +unevaluatedProperties: false > +additionalProperties: false > + > +examples: > + - | > + spi { > + #address-cells = <1>; > + #size-cells = <0>; > + ec@0 { > + compatible = "google,cros-ec-spi"; > + reg = <0>; > + proximity { > + compatible = "google,cros-ec-mkbp-proximity"; > + label = "proximity-wifi-lte"; > + }; > + }; > + }; > diff --git a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml > index 76bf16ee27ec..479a9f15de32 100644 > --- a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml > +++ b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml > @@ -94,6 +94,9 @@ properties: > keyboard-controller: > $ref: "/schemas/input/google,cros-ec-keyb.yaml#" > > + proximity: > + $ref: "/schemas/iio/proximity/google,cros-ec-mkbp-proximity.yaml#" > + > codecs: > type: object > additionalProperties: false > -- > https://chromeos.dev >
On Tue, Feb 02, 2021 at 10:44:33AM -0800, Stephen Boyd wrote: > Some cros ECs support a front proximity MKBP event via > 'EC_MKBP_FRONT_PROXIMITY'. Add a DT binding to document this feature via > a node that is a child of the main cros_ec device node. Devices that > have this ability will describe this in firmware. > > Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> > Cc: Benson Leung <bleung@chromium.org> > Cc: Guenter Roeck <groeck@chromium.org> > Cc: Douglas Anderson <dianders@chromium.org> > Cc: Gwendal Grignou <gwendal@chromium.org> > Cc: <devicetree@vger.kernel.org> > Cc: Rob Herring <robh+dt@kernel.org> > Cc: Enric Balletbo i Serra <enric.balletbo@collabora.com> > Signed-off-by: Stephen Boyd <swboyd@chromium.org> > --- > .../google,cros-ec-mkbp-proximity.yaml | 46 +++++++++++++++++++ > .../bindings/mfd/google,cros-ec.yaml | 3 ++ > 2 files changed, 49 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/proximity/google,cros-ec-mkbp-proximity.yaml > > diff --git a/Documentation/devicetree/bindings/iio/proximity/google,cros-ec-mkbp-proximity.yaml b/Documentation/devicetree/bindings/iio/proximity/google,cros-ec-mkbp-proximity.yaml > new file mode 100644 > index 000000000000..d82b929af445 > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/proximity/google,cros-ec-mkbp-proximity.yaml > @@ -0,0 +1,46 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > + > +$id: http://devicetree.org/schemas/iio/proximity/google,cros-ec-mkbp-proximity.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: ChromeOS EC MKBP Proximity Sensor > + > +maintainers: > + - Stephen Boyd <swboyd@chromium.org> > + - Benson Leung <bleung@chromium.org> > + - Enric Balletbo i Serra <enric.balletbo@collabora.com> > + > +description: | > + Google's ChromeOS EC sometimes has the ability to detect user proximity. > + This is implemented on the EC as near/far logic and exposed to the OS > + via an MKBP switch bit. > + > +properties: > + compatible: > + const: google,cros-ec-mkbp-proximity > + > + label: > + description: Name for proximity sensor > + > +required: > + - compatible > + > +unevaluatedProperties: false > +additionalProperties: false Only need one. In this case 'additionalProperties'. > + > +examples: > + - | > + spi { > + #address-cells = <1>; > + #size-cells = <0>; > + ec@0 { > + compatible = "google,cros-ec-spi"; > + reg = <0>; > + proximity { > + compatible = "google,cros-ec-mkbp-proximity"; > + label = "proximity-wifi-lte"; > + }; The complete examples I prefer is 1 example for the whole MFD in the MFD schema and no example here. > + }; > + }; > diff --git a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml > index 76bf16ee27ec..479a9f15de32 100644 > --- a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml > +++ b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml > @@ -94,6 +94,9 @@ properties: > keyboard-controller: > $ref: "/schemas/input/google,cros-ec-keyb.yaml#" > > + proximity: > + $ref: "/schemas/iio/proximity/google,cros-ec-mkbp-proximity.yaml#" > + > codecs: > type: object > additionalProperties: false > -- > https://chromeos.dev >
Quoting Rob Herring (2021-02-09 13:13:47) > On Tue, Feb 02, 2021 at 10:44:33AM -0800, Stephen Boyd wrote: > > + description: Name for proximity sensor > > + > > +required: > > + - compatible > > + > > +unevaluatedProperties: false > > +additionalProperties: false > > Only need one. In this case 'additionalProperties'. Got it. > > > + > > +examples: > > + - | > > + spi { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + ec@0 { > > + compatible = "google,cros-ec-spi"; > > + reg = <0>; > > + proximity { > > + compatible = "google,cros-ec-mkbp-proximity"; > > + label = "proximity-wifi-lte"; > > + }; > > The complete examples I prefer is 1 example for the whole MFD in the MFD > schema and no example here. Alright. I can add it to the mfd binding instead. > > > + }; > > + }; > > diff --git a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml > > index 76bf16ee27ec..479a9f15de32 100644 > > --- a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml > > +++ b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml > > @@ -94,6 +94,9 @@ properties: > > keyboard-controller: > > $ref: "/schemas/input/google,cros-ec-keyb.yaml#"
diff --git a/Documentation/devicetree/bindings/iio/proximity/google,cros-ec-mkbp-proximity.yaml b/Documentation/devicetree/bindings/iio/proximity/google,cros-ec-mkbp-proximity.yaml new file mode 100644 index 000000000000..d82b929af445 --- /dev/null +++ b/Documentation/devicetree/bindings/iio/proximity/google,cros-ec-mkbp-proximity.yaml @@ -0,0 +1,46 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- + +$id: http://devicetree.org/schemas/iio/proximity/google,cros-ec-mkbp-proximity.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: ChromeOS EC MKBP Proximity Sensor + +maintainers: + - Stephen Boyd <swboyd@chromium.org> + - Benson Leung <bleung@chromium.org> + - Enric Balletbo i Serra <enric.balletbo@collabora.com> + +description: | + Google's ChromeOS EC sometimes has the ability to detect user proximity. + This is implemented on the EC as near/far logic and exposed to the OS + via an MKBP switch bit. + +properties: + compatible: + const: google,cros-ec-mkbp-proximity + + label: + description: Name for proximity sensor + +required: + - compatible + +unevaluatedProperties: false +additionalProperties: false + +examples: + - | + spi { + #address-cells = <1>; + #size-cells = <0>; + ec@0 { + compatible = "google,cros-ec-spi"; + reg = <0>; + proximity { + compatible = "google,cros-ec-mkbp-proximity"; + label = "proximity-wifi-lte"; + }; + }; + }; diff --git a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml index 76bf16ee27ec..479a9f15de32 100644 --- a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml +++ b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml @@ -94,6 +94,9 @@ properties: keyboard-controller: $ref: "/schemas/input/google,cros-ec-keyb.yaml#" + proximity: + $ref: "/schemas/iio/proximity/google,cros-ec-mkbp-proximity.yaml#" + codecs: type: object additionalProperties: false
Some cros ECs support a front proximity MKBP event via 'EC_MKBP_FRONT_PROXIMITY'. Add a DT binding to document this feature via a node that is a child of the main cros_ec device node. Devices that have this ability will describe this in firmware. Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Cc: Benson Leung <bleung@chromium.org> Cc: Guenter Roeck <groeck@chromium.org> Cc: Douglas Anderson <dianders@chromium.org> Cc: Gwendal Grignou <gwendal@chromium.org> Cc: <devicetree@vger.kernel.org> Cc: Rob Herring <robh+dt@kernel.org> Cc: Enric Balletbo i Serra <enric.balletbo@collabora.com> Signed-off-by: Stephen Boyd <swboyd@chromium.org> --- .../google,cros-ec-mkbp-proximity.yaml | 46 +++++++++++++++++++ .../bindings/mfd/google,cros-ec.yaml | 3 ++ 2 files changed, 49 insertions(+) create mode 100644 Documentation/devicetree/bindings/iio/proximity/google,cros-ec-mkbp-proximity.yaml