All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: Wolfram Sang <wsa+renesas@sang-engineering.com>
Cc: linux-i2c@vger.kernel.org, devicetree@vger.kernel.org,
	Laine Jaakko EXT <ext-jaakko.laine@vaisala.com>
Subject: Re: [PATCH] i2c: add 'single-master' property to generic bindings
Date: Fri, 29 May 2020 16:02:28 -0600	[thread overview]
Message-ID: <20200529220228.GA3052199@bogus> (raw)
In-Reply-To: <20200527113039.5380-1-wsa+renesas@sang-engineering.com>

On Wed, May 27, 2020 at 01:30:39PM +0200, Wolfram Sang wrote:
> It is useful to know if we are the only master on a given bus. Because
> this is a HW description of the bus, add it to the generic bindings.
> 
> Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
> Cc: Laine Jaakko EXT <ext-jaakko.laine@vaisala.com>
> ---
> 
> We added 'multi-master' back then because most busses are single-master
> and 'multi-master' was the exception. In hindsight, however, this was a
> bad choice because 'multi-master' should be the default, i.e. if you
> know nothing, you should assume there could be another master.
> 
> So, we can't deduce that a missing 'multi-master' property automatically
> means 'single-master'. That's why we need this new property.
> 
> I am a bit tempted to mark 'multi-master' as deprecated because the
> default should be multi-master. However, it might also be a bit more
> descriptive to let "no property" still mean "we don't know". I'd be
> thankful for more opinions here.

Could you just have different timeouts for clearing stalled bus. You 
know quickly if 'single-master' is set, but have to wait longer if not?

Note that we need to add a bunch of these properties to dt-schema 
i2c-controller.yaml. I hadn't done that because I want to dual license 
in the process, but lots of folks have touched i2c.txt IIRC.

Reviewed-by: Rob Herring <robh@kernel.org>

> Thanks and happy hacking,
> 
>    Wolfram
> 
>  Documentation/devicetree/bindings/i2c/i2c.txt | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/i2c/i2c.txt b/Documentation/devicetree/bindings/i2c/i2c.txt
> index 819436b48fae..438ae123107e 100644
> --- a/Documentation/devicetree/bindings/i2c/i2c.txt
> +++ b/Documentation/devicetree/bindings/i2c/i2c.txt
> @@ -70,7 +70,12 @@ wants to support one of the below features, it should adapt these bindings.
>  - multi-master
>  	states that there is another master active on this bus. The OS can use
>  	this information to adapt power management to keep the arbitration awake
> -	all the time, for example.
> +	all the time, for example. Can not be combined with 'single-master'.
> +
> +- single-master
> +	states that there is no other master active on this bus. The OS can use
> +	this information to detect a stalled bus more reliably, for example.
> +	Can not be combined with 'multi-master'.
>  
>  Required properties (per child device)
>  --------------------------------------
> -- 
> 2.20.1
> 

  reply	other threads:[~2020-05-29 22:02 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-27 11:30 [PATCH] i2c: add 'single-master' property to generic bindings Wolfram Sang
2020-05-29 22:02 ` Rob Herring [this message]
2020-05-29 23:02   ` Wolfram Sang
2020-06-03 13:58     ` Rob Herring
2020-05-30 21:13 ` Wolfram Sang

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=20200529220228.GA3052199@bogus \
    --to=robh@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=ext-jaakko.laine@vaisala.com \
    --cc=linux-i2c@vger.kernel.org \
    --cc=wsa+renesas@sang-engineering.com \
    /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.