From: santosh shilimkar <santosh.shilimkar@oracle.com>
To: Alexander Sverdlin <alexander.sverdlin@nokia.com>,
Sekhar Nori <nsekhar@ti.com>,
Kevin Hilman <khilman@deeprootsystems.com>,
linux-i2c@vger.kernel.org, Murali Karicheri <m-karicheri2@ti.com>,
Santosh Shilimkar <ssantosh@kernel.org>
Cc: Wolfram Sang <wsa@the-dreams.de>
Subject: Re: [PATCH] i2c: davinci: Increase module clock frequency
Date: Thu, 19 Nov 2015 16:22:07 -0800 [thread overview]
Message-ID: <564E67AF.7010900@oracle.com> (raw)
In-Reply-To: <564DBEE3.4030508@nokia.com>
On 11/19/2015 4:21 AM, Alexander Sverdlin wrote:
> I2C controller used in Keystone SoC has an undocumented peculiarity which
> results in SDA-SCL margins being dependent on module clock. Driving high
> capacity bus near its limits can result in STOP condition sometimes being
> understood as REPEATED-START by slaves (or NACK instead of ACK, etc...).
> Driving the module with higher clocks increases the margin between SDA and SCL
> transitions, making the operations with higher bus rates more robust. Therefore,
> target the module clock to 12MHz instead of 7MHz, still staying within
> the specification limits.
>
> Before the change STOP timing looked like this on 400kHz:
>
> SDA ----------+ +----
> \ /
> \ /
> +----+
> (1)
> SCL --+ +------------
> \ /
> \ /
> +----+
> (2)
>
> While only point (1) signals STOP, point (2) could be incorrectly recognized as
> repeated-START (almost no margin between SDA and SCL transitions).
>
> After the change there is at least 600ns margin measured between SCL fall and
> SDA fall during STOP generation:
>
> SDA ------+ +----
> \ /
> \ /
> +----+
>
> SCL --+ +--------
> \ /
> \ /
> +----+
> ->| |<- 600ns
> ->| |<- tSUSTO
>
> So called tSUSTO (setup time for STOP condition) is still slightly higher than
> 600ns, so no problem here.
>
> Signed-off-by: Alexander Sverdlin <alexander.sverdlin@nokia.com>
> ---
Nice text artwork.
Acked-by: Santosh Shilimkar <ssantosh@kernel.org>
next prev parent reply other threads:[~2015-11-20 0:22 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-19 12:21 [PATCH] i2c: davinci: Increase module clock frequency Alexander Sverdlin
2015-11-20 0:22 ` santosh shilimkar [this message]
2015-11-30 13:55 ` Wolfram Sang
2015-11-30 14:00 ` Alexander Sverdlin
2015-11-30 14:10 ` Wolfram Sang
2015-11-30 14:51 ` [PATCH v2] " Alexander Sverdlin
2015-11-30 14:56 ` Wolfram Sang
2015-11-30 15:02 ` 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=564E67AF.7010900@oracle.com \
--to=santosh.shilimkar@oracle.com \
--cc=alexander.sverdlin@nokia.com \
--cc=khilman@deeprootsystems.com \
--cc=linux-i2c@vger.kernel.org \
--cc=m-karicheri2@ti.com \
--cc=nsekhar@ti.com \
--cc=ssantosh@kernel.org \
--cc=wsa@the-dreams.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;
as well as URLs for NNTP newsgroup(s).