All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: Heiner Kallweit <hkallweit1@gmail.com>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Wolfram Sang <wsa@kernel.org>, Peter Rosin <peda@axentia.se>,
	"linux-i2c@vger.kernel.org" <linux-i2c@vger.kernel.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>
Subject: Re: [PATCH v4 1/3] dt-bindings: i2c-gpio: Add properties for dealing with write-only SDA/SCL w/o pullup
Date: Wed, 18 Jan 2023 10:32:08 -0600	[thread overview]
Message-ID: <20230118163208.GA117919-robh@kernel.org> (raw)
In-Reply-To: <fa28a480-1980-16dd-0263-ae4866e7c7cc@gmail.com>

On Tue, Jan 17, 2023 at 09:36:05PM +0100, Heiner Kallweit wrote:
> There are slave devices that understand I2C but have read-only SDA and
> SCL. Examples are FD650 7-segment LED controller and its derivatives.
> Typical board designs don't even have a pull-up for both pins.
> Therefore add properties for not using open-drain. For write-only SCL
> we have a property already, add one for write-only SDA.
> 
> Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
> ---
> v4:
> - add no-pullup properties
> ---
>  .../devicetree/bindings/i2c/i2c-gpio.yaml        | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/i2c/i2c-gpio.yaml b/Documentation/devicetree/bindings/i2c/i2c-gpio.yaml
> index e0d76d5eb..67898cc52 100644
> --- a/Documentation/devicetree/bindings/i2c/i2c-gpio.yaml
> +++ b/Documentation/devicetree/bindings/i2c/i2c-gpio.yaml
> @@ -33,6 +33,10 @@ properties:
>        open drain.
>      maxItems: 1
>  
> +  i2c-gpio,sda-output-only:
> +    description: sda as output only
> +    type: boolean
> +
>    i2c-gpio,scl-output-only:
>      description: scl as output only
>      type: boolean
> @@ -63,6 +67,18 @@ properties:
>        GPIO line used for SCL into open drain mode, and that something is not
>        the GPIO chip. It is essentially an inconsistency flag.
>  
> +  i2c-gpio,sda-has-no-pullup:
> +    type: boolean
> +    description: sda is used in a non-compliant way and has no pull-up.
> +      Therefore disable open-drain. This property is mutually-exclusive
> +      with i2c-gpio,sda-open-drain.
> +
> +  i2c-gpio,scl-has-no-pullup:
> +    type: boolean
> +    description: scl is used in a non-compliant way and has no pull-up.
> +      Therefore disable open-drain. This property is mutually-exclusive
> +      with i2c-gpio,scl-open-drain.

The mutual-exclusion can be expressed as a schema instead:

allOf:
  - not:
      required:
        - i2c-gpio,scl-has-no-pullup
        - i2c-gpio,scl-open-drain
  - not:
      required:
        - i2c-gpio,sda-has-no-pullup
        - i2c-gpio,sda-open-drain

Using 'dependencies' with a schema would also work.

Rob

  reply	other threads:[~2023-01-18 16:34 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-17 20:34 [PATCH v4 0/3] i2c: gpio: support write-only sda Heiner Kallweit
2023-01-17 20:36 ` [PATCH v4 1/3] dt-bindings: i2c-gpio: Add properties for dealing with write-only SDA/SCL w/o pullup Heiner Kallweit
2023-01-18 16:32   ` Rob Herring [this message]
2023-01-18 17:55     ` Heiner Kallweit
2023-01-17 20:38 ` [PATCH v4 2/3] i2c: algo: bit: allow getsda to be NULL Heiner Kallweit
2023-01-17 20:39 ` [PATCH v4 3/3] i2c: gpio: support write-only sda/scl w/o pull-up Heiner Kallweit

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=20230118163208.GA117919-robh@kernel.org \
    --to=robh@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=hkallweit1@gmail.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=peda@axentia.se \
    --cc=wsa@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.