From: Alok Chauhan <alokc@nvidia.com>
To: Shubhrajyoti Datta <omaplinuxkernel@gmail.com>
Cc: Stephen Warren <swarren@wwwdotorg.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"khali@linux-fr.org" <khali@linux-fr.org>,
"ben-linux@fluff.org" <ben-linux@fluff.org>,
"w.sang@pengutronix.de" <w.sang@pengutronix.de>,
Stephen Warren <swarren@nvidia.com>,
"olof@lixom.net" <olof@lixom.net>,
"bones@secretlab.ca" <bones@secretlab.ca>,
"ccross@android.com" <ccross@android.com>,
Laxman Dewangan <ldewangan@nvidia.com>,
"linux-tegra@vger.kernel.org" <linux-tegra@vger.kernel.org>,
"linux-i2c@vger.kernel.org" <linux-i2c@vger.kernel.org>,
"dgreid@chromium.org" <dgreid@chromium.org>
Subject: RE: [PATCH v2] i2c: tegra: Add delay before reset the controller
Date: Mon, 2 Apr 2012 17:36:45 +0530 [thread overview]
Message-ID: <7A0BFCFE3DA5CD47B0FB7984326F201A136BDCC3DB@BGMAIL01.nvidia.com> (raw)
In-Reply-To: <CAM=Q2cuN+qAjDsBNp5Sq_Xs9KGcOQJ+PwjSVW-F0QczxMpWZRQ@mail.gmail.com>
Hi Shubhrajyoti,
> Why is it clock cycle dependent?
I think you got me wrong. What I meant to say that delay is calculated based on clock period of that bus. So in this way I don't have to hardcode the delay value.
> Is it possible to poll if the stop is sent by controller ?
No, Tegra i2c controller doesn't have any register for STOP condition completion status bit. So delay is the only option here.
Thanks
Alok
-----Original Message-----
From: Shubhrajyoti Datta [mailto:omaplinuxkernel@gmail.com]
Sent: Monday, April 02, 2012 3:49 PM
To: Alok Chauhan
Cc: Stephen Warren; linux-kernel@vger.kernel.org; khali@linux-fr.org; ben-linux@fluff.org; w.sang@pengutronix.de; Stephen Warren; olof@lixom.net; bones@secretlab.ca; ccross@android.com; Laxman Dewangan; linux-tegra@vger.kernel.org; linux-i2c@vger.kernel.org; dgreid@chromium.org
Subject: Re: [PATCH v2] i2c: tegra: Add delay before reset the controller
Hi Alok,
Few / doubts /questions.
On Mon, Apr 2, 2012 at 11:29 AM, Alok Chauhan <alokc@nvidia.com> wrote:
> Stephen,
>
> I've updated the commit message and comment in the code as per your suggestion. Tegra I2C controller doesn't have idle bit so delay is required before reset the controller in case of NACK error. This delay is calculated purely based on clock period of that particular i2c bus and not passed as hardcoded value. I2C SCL clock-stretching won't affect this calculated delay.
Why is it clock cycle dependent?
Is it possible to poll if the stop is sent by controller ?
>
> Thanks
> Alok
>
>
> -----Original Message-----
> From: Alok Chauhan [mailto:alokc@nvidia.com]
> Sent: Monday, April 02, 2012 11:23 AM
> To: swarren@wwwdotorg.org; khali@linux-fr.org; ben-linux@fluff.org; w.sang@pengutronix.de; Stephen Warren; olof@lixom.net; bones@secretlab.ca; omaplinuxkernel@gmail.com; ccross@android.com; Laxman Dewangan; linux-tegra@vger.kernel.org; linux-i2c@vger.kernel.org; dgreid@chromium.org
> Cc: Alok Chauhan; linux-kernel@vger.kernel.org
> Subject: [PATCH v2] i2c: tegra: Add delay before reset the controller
>
> NACK interrupt generated before I2C controller generates the STOP condition on bus. In Software, because of this reset of controller is happening before I2C controller could complete STOP condition. So wait for some time before resetting the controller so that STOP condition has delivered properly on bus.
>
> Added delay of 2 clock period
How did you calculate the 2 clock cycles?
before reset the controller in case of NACK error.
>
> Signed-off-by: Alok Chauhan <alokc@nvidia.com>
> ---
> Added the more descriptive commit message about issue in case of NACK error condition. Changed the comment in code also
>
> drivers/i2c/busses/i2c-tegra.c | 8 ++++++++
> 1 files changed, 8 insertions(+), 0 deletions(-)
>
next prev parent reply other threads:[~2012-04-02 12:06 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-02 5:53 Alok Chauhan
2012-04-02 5:59 ` Alok Chauhan
2012-04-02 10:19 ` Shubhrajyoti Datta
2012-04-02 12:06 ` Alok Chauhan [this message]
2012-04-02 19:58 ` Stephen Warren
2012-04-13 22:51 ` Stephen Warren
2012-04-18 14:27 ` Wolfram Sang
2012-04-18 20:02 ` Stephen Warren
2012-04-18 20:20 ` Wolfram Sang
-- strict thread matches above, loose matches on Subject: below --
2011-12-26 11:14 Alok Chauhan
2012-01-06 16:18 ` Ben Dooks
2012-01-10 4:12 ` Alok Chauhan
2012-02-10 9:20 ` Alok Chauhan
2012-02-10 9:35 ` Shubhrajyoti Datta
2012-02-14 5:49 ` Alok Chauhan
2012-03-08 6:29 ` Alok Chauhan
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=7A0BFCFE3DA5CD47B0FB7984326F201A136BDCC3DB@BGMAIL01.nvidia.com \
--to=alokc@nvidia.com \
--cc=ben-linux@fluff.org \
--cc=bones@secretlab.ca \
--cc=ccross@android.com \
--cc=dgreid@chromium.org \
--cc=khali@linux-fr.org \
--cc=ldewangan@nvidia.com \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=olof@lixom.net \
--cc=omaplinuxkernel@gmail.com \
--cc=swarren@nvidia.com \
--cc=swarren@wwwdotorg.org \
--cc=w.sang@pengutronix.de \
/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
all inboxes | Powered by JetHome®