From: "De Marchi, Lucas" <lucas.demarchi@intel.com>
To: "jarkko.nikula@linux.intel.com" <jarkko.nikula@linux.intel.com>,
"linux-i2c@vger.kernel.org" <linux-i2c@vger.kernel.org>
Cc: "mika.westerberg@linux.intel.com"
<mika.westerberg@linux.intel.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"christian.ruppert@alitech.com" <christian.ruppert@alitech.com>,
"Souza, Jose" <jose.souza@intel.com>
Subject: Re: [PATCH v3 2/3] i2c: designware: detect when dynamic tar update is possible
Date: Tue, 16 Aug 2016 14:07:50 +0000 [thread overview]
Message-ID: <1471356468.2907.4.camel@intel.com> (raw)
In-Reply-To: <f4c1fb29-b315-33ee-f029-684ef9cd6264@linux.intel.com>
On Tue, 2016-08-16 at 17:00 +0300, Jarkko Nikula wrote:
> Hi, + Wolfram
>
> On 07/29/2016 01:03 AM, Lucas De Marchi wrote:
> >
> > This adapter can be synthesized with dynamic tar update enabled or
> > disabled.
> > When enabled it is not necessary to disable the adapter to change
> > the slave
> > address in some situations, which saves some time per transaction.
> >
> > There is no direct register to know if this feature is enabled but
> > we can do it
> > indirectly by writing to the 10BIT_ADDR field in IC_CON: this field
> > is
> > read only when dynamic tar update is enabled.
> >
> > Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
> > Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
> > ---
> > drivers/i2c/busses/i2c-designware-core.c | 37
> > ++++++++++++++++++++++----------
> > drivers/i2c/busses/i2c-designware-core.h | 1 +
> > 2 files changed, 27 insertions(+), 11 deletions(-)
> >
> > diff --git a/drivers/i2c/busses/i2c-designware-core.c
> > b/drivers/i2c/busses/i2c-designware-core.c
> > index 2c61585..a8408db 100644
> > --- a/drivers/i2c/busses/i2c-designware-core.c
> > +++ b/drivers/i2c/busses/i2c-designware-core.c
> > @@ -388,6 +388,20 @@ int i2c_dw_init(struct dw_i2c_dev *dev)
> > /* configure the i2c master */
> > dw_writel(dev, dev->master_cfg , DW_IC_CON);
> >
> > + /*
> > + * Test if dynamic TAR update is enabled in this
> > controller by writing to
>
> Over 80 characters in this line.
I'll fix this and wait for more comments (or a few days) before sending
a new version.
> > + */
> > + reg = dw_readl(dev, DW_IC_CON);
> > + dw_writel(dev, reg ^ DW_IC_CON_10BITADDR_MASTER,
> > DW_IC_CON);
> > +
> > + if ((dw_readl(dev, DW_IC_CON) &
> > DW_IC_CON_10BITADDR_MASTER) ==
> > + (reg & DW_IC_CON_10BITADDR_MASTER)) {
> > + dev->dynamic_tar_update_enabled = true;
> > + dev_dbg(dev->dev, "Dynamic TAR update enabled");
> > + }
>
> Is this possible to move to i2c_dw_probe()? I guess the enabled
> status
> doesn't change runtime?
It was actually useful at this place during development of this patch
because we could check any unexpected change in behavior when resuming.
We did catch a bug because of this and fixed.
I'm not sure if now it makes more sense to move to probe method. I'd
leave it where it is, but I'm open to move it there.
thanks
Lucas De Marchi
next prev parent reply other threads:[~2016-08-16 14:07 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-28 22:03 [PATCH v3 0/3] i2c: designware: improve performance for transfers Lucas De Marchi
2016-07-28 22:03 ` [PATCH v3 1/3] i2c: designware: wait for disable/enable only if necessary Lucas De Marchi
2016-08-16 13:59 ` Jarkko Nikula
2016-07-28 22:03 ` [PATCH v3 2/3] i2c: designware: detect when dynamic tar update is possible Lucas De Marchi
2016-08-16 14:00 ` Jarkko Nikula
2016-08-16 14:07 ` De Marchi, Lucas [this message]
2016-08-17 8:05 ` Jarkko Nikula
2016-08-17 12:48 ` De Marchi, Lucas
2016-07-28 22:03 ` [PATCH v3 3/3] i2c: designware: do not disable adapter after transfer Lucas De Marchi
2016-08-16 14:00 ` Jarkko Nikula
2016-08-12 14:59 ` [PATCH v3 0/3] i2c: designware: improve performance for transfers Christian Ruppert
2016-08-15 12:34 ` De Marchi, Lucas
2016-08-16 12:14 ` 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=1471356468.2907.4.camel@intel.com \
--to=lucas.demarchi@intel.com \
--cc=christian.ruppert@alitech.com \
--cc=jarkko.nikula@linux.intel.com \
--cc=jose.souza@intel.com \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mika.westerberg@linux.intel.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 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).