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 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.