devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jonathan Cameron <jic23@kernel.org>
To: Matti Vaittinen <mazziesaccount@gmail.com>
Cc: "Matti Vaittinen" <matti.vaittinen@fi.rohmeurope.com>,
	"Lars-Peter Clausen" <lars@metafoo.de>,
	"Michael Hennerich" <Michael.Hennerich@analog.com>,
	"David Lechner" <dlechner@baylibre.com>,
	"Nuno Sá" <nuno.sa@analog.com>,
	"Andy Shevchenko" <andy@kernel.org>,
	"Rob Herring" <robh@kernel.org>,
	"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
	"Conor Dooley" <conor+dt@kernel.org>,
	"Liam Girdwood" <lgirdwood@gmail.com>,
	"Mark Brown" <broonie@kernel.org>,
	linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 08/10] dt-bindings: iio: adc: ad7476: Add ROHM bd79105
Date: Sat, 9 Aug 2025 20:21:06 +0100	[thread overview]
Message-ID: <20250809202106.59d405c5@jic23-huawei> (raw)
In-Reply-To: <cc5cfa7540caae4bcb7448a59602421d54353ecc.1754641960.git.mazziesaccount@gmail.com>

On Fri, 8 Aug 2025 11:54:25 +0300
Matti Vaittinen <mazziesaccount@gmail.com> wrote:

> The ROHM BD79105 is a simple, 16-bit, 1-channel ADC with a 'CONVSTART'
> pin used to start the ADC conversion. Other than the 'CONVSTART', there
> are 3 supply pins (one used as a reference), analog inputs, ground and
> communication pins. It's worth noting that the pin somewhat confusingly
> labeled as 'DIN', is a pin which should be used as a chip-select. The IC
> does not have any writable registers.
> 
> The device is designed so that the output pin can, in addition to
> outputting the data, be used as a 'data-ready'-IRQ. This, however, would
> require the IRQ to be masked from host side for the duration of the data
> reads - and it wouldn't also work when the SPI is shared. (As access to
> the other SPI devices would cause data line changes to be detected as
> IRQs - and the BD79105 provides no means to detect if it has generated
> an IRQ).
> 
> Hence the device-tree does not contain any IRQ properties.

Commit message needs an update as it now allows for IRQ properties.


> 
> Add a compatible for the bd79105.
> 
> Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
> 
> ---
> Revision history:
>  v2 => :
>  - No changes
> 
>  v1 => v2:
>  - BD79105 can provide data-ready IRQ (or GPIO) via DOUT-pin.
> ---
>  .../bindings/iio/adc/adi,ad7476.yaml          | 54 +++++++++++++++++++
>  1 file changed, 54 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad7476.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad7476.yaml
> index d0cb32f136e5..c411a7467651 100644
> --- a/Documentation/devicetree/bindings/iio/adc/adi,ad7476.yaml
> +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad7476.yaml
> @@ -41,6 +41,7 @@ properties:
>                - adi,ad7910
>                - adi,ad7920
>                - adi,ad7940
> +              - rohm,bd79105
>                - ti,adc081s
>                - ti,adc101s
>                - ti,adc121s
> @@ -55,6 +56,11 @@ properties:
>    reg:
>      maxItems: 1
>  
> +  interrupts:
> +    description:
> +      The data-ready interrupt. Provided via DOUT pin.
> +    maxItems: 1
> +
>    vcc-supply:
>      description:
>        Main powersupply voltage for the chips, sometimes referred to as VDD on
> @@ -75,6 +81,10 @@ properties:
>      description: A GPIO used to trigger the start of a conversion
>      maxItems: 1
>  
> +  rdy-gpios:
> +    description: A GPIO for detecting the data-ready.
> +    maxItems: 1
> +
>  required:
>    - compatible
>    - reg
> @@ -82,6 +92,20 @@ required:
>  allOf:
>    - $ref: /schemas/spi/spi-peripheral-props.yaml#
>  
> +# Devices with an IRQ
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - rohm,bd79105
> +    then:
> +      properties:
> +        interrupts: true

It's been a while since I wrote one of these, but do we need
the true bit given we have already specified the interrupts
property.  I think we only need to do the setting to false
on an if: not: 

> +    else:
> +      properties:
> +        interrupts: false
> +
>    # Devices where reference is vcc
>    - if:
>        properties:
> @@ -115,6 +139,7 @@ allOf:
>                - adi,ad7274
>                - adi,ad7475
>                - lltc,ltc2314-14
> +              - rohm,bd79105
>      then:
>        properties:
>          vref-supply: true
> @@ -131,6 +156,7 @@ allOf:
>                - adi,ad7274
>                - adi,ad7475
>                - lltc,ltc2314-14
> +              - rohm,bd79105
>      then:
>        required:
>          - vref-supply
> @@ -141,12 +167,28 @@ allOf:
>              enum:
>                - adi,ad7475
>                - adi,ad7495
> +              - rohm,bd79105
>      then:
>        properties:
>          vdrive-supply: true
>      else:
>        properties:
>          vdrive-supply: false
> +
> +  # Devices which support polling the data-ready via GPIO
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - rohm,bd79105
> +    then:
> +      properties:
> +        rdy-gpios: true

As above, I believe we only need the not case.

> +    else:
> +      properties:
> +        rdy-gpios: false
> +
>    - if:
>        properties:
>          compatible:
> @@ -154,6 +196,7 @@ allOf:
>              enum:
>                - adi,ad7091
>                - adi,ad7091r
> +              - rohm,bd79105
>      then:
>        properties:
>          adi,conversion-start-gpios: true
> @@ -161,6 +204,17 @@ allOf:
>        properties:
>          adi,conversion-start-gpios: false
>  
> +  # Devices with a convstart GPIO where it is not optional
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - rohm,bd79105
> +    then:
> +      required:
> +        - adi,conversion-start-gpios
> +
>  unevaluatedProperties: false
>  
>  examples:


  reply	other threads:[~2025-08-09 19:21 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-08-08  8:50 [PATCH v3 00/10] Support ROHM BD79105 ADC Matti Vaittinen
2025-08-08  8:51 ` [PATCH v3 01/10] iio: adc: ad7476: Simplify chip type detection Matti Vaittinen
2025-08-08  8:51 ` [PATCH v3 02/10] iio: adc: ad7476: Simplify scale handling Matti Vaittinen
2025-08-08  8:51 ` [PATCH v3 03/10] iio: adc: ad7476: Use mV for internal reference Matti Vaittinen
2025-08-08  8:51 ` [PATCH v3 04/10] iio: adc: ad7476: Use correct channel for bit info Matti Vaittinen
2025-08-08  8:52 ` [PATCH v3 05/10] iio: adc: ad7476: use *_cansleep GPIO APIs Matti Vaittinen
2025-08-08 14:23   ` Nuno Sá
2025-08-08  8:53 ` [PATCH v3 06/10] iio: adc: ad7476: Drop convstart chan_spec Matti Vaittinen
2025-08-08 14:23   ` Nuno Sá
2025-08-08  8:54 ` [PATCH v3 07/10] iio: adc: ad7476: Conditionally call convstart Matti Vaittinen
2025-08-08 14:23   ` Nuno Sá
2025-08-08  8:54 ` [PATCH v3 08/10] dt-bindings: iio: adc: ad7476: Add ROHM bd79105 Matti Vaittinen
2025-08-09 19:21   ` Jonathan Cameron [this message]
2025-08-11  8:05     ` Matti Vaittinen
2025-08-08  8:55 ` [PATCH v3 09/10] iio: adc: ad7476: Support ROHM BD79105 Matti Vaittinen
2025-08-08 14:24   ` Nuno Sá
2025-08-08  8:56 ` [PATCH v3 10/10] MAINTAINERS: A driver for simple 1-channel SPI ADCs Matti Vaittinen
2025-08-08 12:42 ` [PATCH v3 00/10] Support ROHM BD79105 ADC Andy Shevchenko
2025-08-09 19:22   ` Jonathan Cameron

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=20250809202106.59d405c5@jic23-huawei \
    --to=jic23@kernel.org \
    --cc=Michael.Hennerich@analog.com \
    --cc=andy@kernel.org \
    --cc=broonie@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dlechner@baylibre.com \
    --cc=krzk+dt@kernel.org \
    --cc=lars@metafoo.de \
    --cc=lgirdwood@gmail.com \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=matti.vaittinen@fi.rohmeurope.com \
    --cc=mazziesaccount@gmail.com \
    --cc=nuno.sa@analog.com \
    --cc=robh@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).