All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Boyd <swboyd@chromium.org>
To: Gwendal Grignou <gwendal@chromium.org>,
	jic23@kernel.org, lars@metafoo.de, robh+dt@kernel.org
Cc: andy.shevchenko@gmail.com, linux-iio@vger.kernel.org,
	devicetree@vger.kernel.org
Subject: Re: [PATCH v5 4/5] dt-bindings: iio: Add sx9324 binding
Date: Tue, 7 Dec 2021 23:42:04 -0500	[thread overview]
Message-ID: <CAE-0n50Jz0qu+8tog3ex5K+LL4fBTxOxnM0u5TNq5E8M+kRNAQ@mail.gmail.com> (raw)
In-Reply-To: <20211208004311.3098571-5-gwendal@chromium.org>

+Rob *crosses fingers*

Quoting Gwendal Grignou (2021-12-07 16:43:10)
> Similar to SX9310, add biddings to setup sx9324 hardware properties.
> SX9324 is a little different, introduce 4 phases to be configured in 2
> pairs over 3 antennas.
>
> Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
> ---
> Changes in v5:
> - Use consistent field naming, prefixed with phX.
>
> Changes in v4:
> - Use const instead of single enum
> - Specify ph0-pin better
> - Recopy type information for phX-pin
> - Fix cut and paste errors.
>
> Changes in v3:
> - Remove duplicate information.
> - Use intervals instead of enum.
> - Fix filter description.
>
> Changes in v2:
> - Fix interrupt documentation wording.
>
>  .../iio/proximity/semtech,sx9324.yaml         | 161 ++++++++++++++++++

Please add Rob for dt binding review. I'm not sure if the
semi-autonomous robot runs without Cc robh+dt

>  1 file changed, 161 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/iio/proximity/semtech,sx9324.yaml
>
> diff --git a/Documentation/devicetree/bindings/iio/proximity/semtech,sx9324.yaml b/Documentation/devicetree/bindings/iio/proximity/semtech,sx9324.yaml
> new file mode 100644
> index 00000000000000..ac9581b0d31364
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/proximity/semtech,sx9324.yaml
> @@ -0,0 +1,161 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/proximity/semtech,sx9324.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Semtech's SX9324 capacitive proximity sensor
> +
> +maintainers:
> +  - Gwendal Grignou <gwendal@chromium.org>
> +  - Daniel Campello <campello@chromium.org>
> +
> +description: |
> +  Semtech's SX9324 proximity sensor.
> +
> +properties:
> +  compatible:
> +    const: semtech,sx9324
> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupts:
> +    description:
> +      Generated by device to announce preceding read request has finished
> +      and data is available or that a close/far proximity event has happened.
> +    maxItems: 1
> +
> +  vdd-supply:
> +    description: Main power supply
> +
> +  svdd-supply:
> +    description: Host interface power supply
> +
> +  "#io-channel-cells":
> +    const: 1
> +
> +  semtech,ph0-pin:
> +    $ref: /schemas/types.yaml#/definitions/uint32-array
> +    description: |
> +      Array of 3 entries. Index represent the id of the CS pin.
> +      Value indicates how each CS pin is used during phase 0.
> +      Each of the 3 pins have the following value -
> +      0 : unused (high impedance)
> +      1 : measured input
> +      2 : dynamic shield
> +      3 : grounded.
> +      For instance, CS0 measured, CS1 shield and CS2 ground is [1, 2, 3]
> +    items:
> +      enum: [ 0, 1, 2, 3 ]
> +    minItems: 3
> +    maxItems: 3
> +
> +  semtech,ph1-pin:
> +    $ref: /schemas/types.yaml#/definitions/uint32-array
> +    description: Same as ph0-pin for phase 1.
> +    items:
> +      enum: [ 0, 1, 2, 3 ]
> +    minItems: 3
> +    maxItems: 3
> +
> +  semtech,ph2-pin:
> +    $ref: /schemas/types.yaml#/definitions/uint32-array
> +    description: Same as ph0-pin for phase 2.
> +    items:
> +      enum: [ 0, 1, 2, 3 ]
> +    minItems: 3
> +    maxItems: 3
> +
> +  semtech,ph3-pin:
> +    $ref: /schemas/types.yaml#/definitions/uint32-array
> +    description: Same as ph0-pin for phase 3.
> +    items:
> +      enum: [ 0, 1, 2, 3 ]
> +    minItems: 3
> +    maxItems: 3
> +
> +
> +  semtech,ph01-resolution:
> +    $ref: /schemas/types.yaml#definitions/uint32
> +    enum: [8, 16, 32, 64, 128, 256, 512, 1024]
> +    description:
> +      Capacitance measurement resolution. For phase 0 and 1.
> +      Higher the number, higher the resolution.
> +    default: 128
> +
> +  semtech,ph23-resolution:
> +    $ref: /schemas/types.yaml#definitions/uint32
> +    enum: [8, 16, 32, 64, 128, 256, 512, 1024]
> +    description:
> +      Capacitance measurement resolution. For phase 2 and 3
> +    default: 128
> +
> +  semtech,startup-sensor:
> +    $ref: /schemas/types.yaml#definitions/uint32
> +    enum: [0, 1, 2, 3]
> +    default: 0
> +    description: |
> +      Phase used for start-up proximity detection.
> +      It is used when we enable a phase to remove static offset and measure
> +      only capacitance changes introduced by the user.
> +
> +  semtech,ph01-proxraw-strength:
> +    $ref: /schemas/types.yaml#definitions/uint32
> +    min: 0
> +    max: 7
> +    default: 1
> +    description:
> +      PROXRAW filter strength for phase 0 and 1. A value of 0 represents off,
> +      and other values represent 1-1/2^N.
> +
> +  semtech,ph23-proxraw-strength:
> +    $ref: /schemas/types.yaml#definitions/uint32
> +    min: 0
> +    max: 7
> +    default: 1
> +    description:
> +      Same as proxraw-strength01, for phase 2 and 3.

We could have a single property then that uses index 0 for phase 0 and 1
and index 1 for phase 2 and 3 if we're worried about them being
different between the two joined phases. Same comment applies to the
resolution.

> +
> +  semtech,avg-pos-strength:
> +    $ref: /schemas/types.yaml#definitions/uint32
> +    enum: [0, 16, 64, 128, 256, 512, 1024, 4294967295]
> +    default: 16
> +    description: |
> +      Average positive filter strength. A value of 0 represents off and
> +      UINT_MAX (4294967295) represents infinite. Other values
> +      represent 1-1/N.
> +
> +required:
> +  - compatible
> +  - reg
> +  - "#io-channel-cells"
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +    i2c {
> +      #address-cells = <1>;
> +      #size-cells = <0>;
> +      proximity@28 {
> +        compatible = "semtech,sx9324";
> +        reg = <0x28>;
> +        interrupt-parent = <&pio>;
> +        interrupts = <5 IRQ_TYPE_LEVEL_LOW 5>;
> +        vdd-supply = <&pp3300_a>;
> +        svdd-supply = <&pp1800_prox>;
> +        #io-channel-cells = <1>;
> +        semtech,ph0-pin = <1, 2, 3>;
> +        semtech,ph1-pin = <3, 2, 1>;
> +        semtech,ph2-pin = <1, 2, 3>;
> +        semtech,ph3-pin = <3, 2, 1>;

The comma should be removed. Have you run 'make dt_binding_check'?

> +        semtech,ph01-resolution = 2;
> +        semtech,ph23-resolution = 2;
> +        semtech,startup-sensor = <1>;
> +        semtech,ph01-proxraw-strength = <2>;
> +        semtech,ph23-proxraw-strength = <2>;
> +        semtech,avg-pos-strength = <64>;
> +      };
> +    };

  reply	other threads:[~2021-12-08  4:42 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-08  0:43 [PATCH v5 0/5] Expand Semtech SAR Sensors support Gwendal Grignou
2021-12-08  0:43 ` [PATCH v5 1/5] iio: sx9310: Add frequency in read_avail Gwendal Grignou
2021-12-08  0:43 ` [PATCH v5 2/5] iio: sx9310: Extract common Semtech sensor logic Gwendal Grignou
2021-12-08  0:43 ` [PATCH v5 3/5] iio: proximity: Add SX9324 support Gwendal Grignou
2021-12-08  3:26   ` kernel test robot
2021-12-08  3:26     ` kernel test robot
2021-12-08 14:31   ` kernel test robot
2021-12-08 14:31     ` kernel test robot
2021-12-08 15:22   ` kernel test robot
2021-12-08 15:22     ` kernel test robot
2021-12-08  0:43 ` [PATCH v5 4/5] dt-bindings: iio: Add sx9324 binding Gwendal Grignou
2021-12-08  4:42   ` Stephen Boyd [this message]
2021-12-08  7:22     ` Gwendal Grignou
2021-12-08 13:44   ` Rob Herring
2021-12-08  0:43 ` [PATCH v5 5/5] iio: sx9324: Add dt_binding support Gwendal Grignou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAE-0n50Jz0qu+8tog3ex5K+LL4fBTxOxnM0u5TNq5E8M+kRNAQ@mail.gmail.com \
    --to=swboyd@chromium.org \
    --cc=andy.shevchenko@gmail.com \
    --cc=devicetree@vger.kernel.org \
    --cc=gwendal@chromium.org \
    --cc=jic23@kernel.org \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.