From: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org> To: Sascha Hauer <s.hauer-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> Cc: Richard Zhao <linuxzsc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, Ben Dooks <ben-linux-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org>, linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org, Wolfram Sang <w.sang-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>, b35325-KZfg59tc24xl57MIdRCFDg@public.gmane.org, b38611-KZfg59tc24xl57MIdRCFDg@public.gmane.org Subject: Re: [PATCH] i2c i.MX: Fix divider table Date: Thu, 12 Jul 2012 08:45:22 +0800 [thread overview] Message-ID: <20120712004522.GA21635@b20223-02.ap.freescale.net> (raw) In-Reply-To: <20120711183838.GM30009-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> On Wed, Jul 11, 2012 at 08:38:38PM +0200, Sascha Hauer wrote: > Hi Richard, > > On Wed, Jul 11, 2012 at 02:01:21PM +0800, Richard Zhao wrote: > > > > IC guys confirmed that the spec is right: > > > > This an adaptive feature of our I2C module may apply to all IMX chips. > > No mistake in the table of RMs. > > > > The divider is designed to guarantee SCL high level and low level last > > time. Divider will hold when SCL transition from 1 to 0 or 0 to 1, if > > the transition time is longer than 1 internal pre-divided clock cycle. > > The pre-divided clock is divided from I2C module clock, used for > > generating SCL. So you will see SCL clock cycle is some way longer than > > calculated value using IFDR. > > > > Transition time will different from rising or falling edge, different > > pull-up resistors, and different SCL loading. > > > > This feature make sure transition time won’t eat both level time of SCL. > > Thanks for clarification. Does this mean that this feature is used to > synchronize between the bus clock and and bitclock? Per my understanding, Not exactly. Divided clock is only used for count time of SCL level hold. This means, even if the i2c bus loading is high (long level setup time), the i2c may still work. Thanks Richard > > I'll send a documentation patch for this next week to make this clear. > > Sascha > > -- > Pengutronix e.K. | | > Industrial Linux Solutions | http://www.pengutronix.de/ | > Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | >
WARNING: multiple messages have this Message-ID (diff)
From: richard.zhao@freescale.com (Richard Zhao) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH] i2c i.MX: Fix divider table Date: Thu, 12 Jul 2012 08:45:22 +0800 [thread overview] Message-ID: <20120712004522.GA21635@b20223-02.ap.freescale.net> (raw) In-Reply-To: <20120711183838.GM30009@pengutronix.de> On Wed, Jul 11, 2012 at 08:38:38PM +0200, Sascha Hauer wrote: > Hi Richard, > > On Wed, Jul 11, 2012 at 02:01:21PM +0800, Richard Zhao wrote: > > > > IC guys confirmed that the spec is right: > > > > This an adaptive feature of our I2C module may apply to all IMX chips. > > No mistake in the table of RMs. > > > > The divider is designed to guarantee SCL high level and low level last > > time. Divider will hold when SCL transition from 1 to 0 or 0 to 1, if > > the transition time is longer than 1 internal pre-divided clock cycle. > > The pre-divided clock is divided from I2C module clock, used for > > generating SCL. So you will see SCL clock cycle is some way longer than > > calculated value using IFDR. > > > > Transition time will different from rising or falling edge, different > > pull-up resistors, and different SCL loading. > > > > This feature make sure transition time won?t eat both level time of SCL. > > Thanks for clarification. Does this mean that this feature is used to > synchronize between the bus clock and and bitclock? Per my understanding, Not exactly. Divided clock is only used for count time of SCL level hold. This means, even if the i2c bus loading is high (long level setup time), the i2c may still work. Thanks Richard > > I'll send a documentation patch for this next week to make this clear. > > Sascha > > -- > Pengutronix e.K. | | > Industrial Linux Solutions | http://www.pengutronix.de/ | > Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | >
next prev parent reply other threads:[~2012-07-12 0:45 UTC|newest] Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top 2012-07-05 13:10 [PATCH] i2c i.MX: Fix divider table Sascha Hauer 2012-07-05 13:10 ` Sascha Hauer 2012-07-05 14:23 ` Baruch Siach 2012-07-05 14:23 ` Baruch Siach [not found] ` <1341493826-13861-1-git-send-email-s.hauer-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> 2012-07-05 14:52 ` Richard Zhao 2012-07-05 14:52 ` Richard Zhao 2012-07-05 16:01 ` Sascha Hauer 2012-07-05 16:01 ` Sascha Hauer [not found] ` <20120705160153.GT30009-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> 2012-07-06 0:52 ` Richard Zhao 2012-07-06 0:52 ` Richard Zhao [not found] ` <20120706005249.GA26888-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 2012-07-06 6:28 ` Sascha Hauer 2012-07-06 6:28 ` Sascha Hauer 2012-07-06 17:41 ` Troy Kisky [not found] ` <20120706062852.GZ30009-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> 2012-07-11 6:01 ` Richard Zhao 2012-07-11 6:01 ` Richard Zhao [not found] ` <20120711060121.GB30055-iWYTGMXpHj9ITqJhDdzsOjpauB2SiJktrE5yTffgRl4@public.gmane.org> 2012-07-11 18:38 ` Sascha Hauer 2012-07-11 18:38 ` Sascha Hauer [not found] ` <20120711183838.GM30009-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> 2012-07-11 19:11 ` Troy Kisky 2012-07-11 19:11 ` Troy Kisky [not found] ` <4FFDCFDB.7020402-Q5RJGjKts06CY9SHAMCTRUEOCMrvLtNR@public.gmane.org> 2012-07-11 19:44 ` Sascha Hauer 2012-07-11 19:44 ` Sascha Hauer 2012-07-12 0:45 ` Richard Zhao [this message] 2012-07-12 0:45 ` Richard Zhao 2012-07-05 18:06 ` Shubhrajyoti Datta 2012-07-05 18:06 ` Shubhrajyoti Datta [not found] ` <CAM=Q2csv3rEs-xseGd6NHxR3wRSZp82ZqNB1mn-_C4=5=nOc6g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2012-07-05 18:47 ` Sascha Hauer 2012-07-05 18:47 ` Sascha Hauer [not found] ` <20120705184736.GW30009-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org> 2012-07-08 9:14 ` Shubhrajyoti Datta 2012-07-08 9:14 ` Shubhrajyoti Datta
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=20120712004522.GA21635@b20223-02.ap.freescale.net \ --to=richard.zhao-kzfg59tc24xl57midrcfdg@public.gmane.org \ --cc=b35325-KZfg59tc24xl57MIdRCFDg@public.gmane.org \ --cc=b38611-KZfg59tc24xl57MIdRCFDg@public.gmane.org \ --cc=ben-linux-elnMNo+KYs3YtjvyW6yDsg@public.gmane.org \ --cc=kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \ --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \ --cc=linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=linuxzsc-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \ --cc=s.hauer-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \ --cc=w.sang-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \ /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: linkBe 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.