public inbox for linux-i2c@vger.kernel.org
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Tali Perry <tali.perry1@gmail.com>
Cc: Tyrone Ting <warp5tw@gmail.com>,
	avifishman70@gmail.com, tmaimon77@gmail.com, venture@google.com,
	yuenn@google.com, benjaminfair@google.com, andi.shyti@kernel.org,
	wsa@kernel.org, rand.sec96@gmail.com,
	wsa+renesas@sang-engineering.com, tali.perry@nuvoton.com,
	Avi.Fishman@nuvoton.com, tomer.maimon@nuvoton.com,
	KWLIU@nuvoton.com, JJLIU0@nuvoton.com, kfting@nuvoton.com,
	openbmc@lists.ozlabs.org, linux-i2c@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 6/7] i2c: npcm: use i2c frequency table
Date: Mon, 9 Sep 2024 13:27:43 +0300	[thread overview]
Message-ID: <Zt7Nn9uJSeHFUZZF@smile.fi.intel.com> (raw)
In-Reply-To: <CAHb3i=uN5jtczEjHhzwL9E9c6d9rU-QZckhU79KzPuY5n81CyA@mail.gmail.com>

On Sun, Sep 08, 2024 at 11:54:50AM +0300, Tali Perry wrote:
> On Mon, Sep 2, 2024 at 3:00 PM Andy Shevchenko
> <andriy.shevchenko@linux.intel.com> wrote:
> > On Sun, Sep 01, 2024 at 06:53:38PM +0300, Tali Perry wrote:
> > > On Fri, Aug 30, 2024 at 10:19 PM Andy Shevchenko
> > > <andriy.shevchenko@linux.intel.com> wrote:

...

> > > The original equations were tested on a variety of chips and base clocks.
> > > Since we added devices that use higher frequencies of the module we
> > > saw that there is a mismatch between the equation and the actual
> > > results on the bus itself, measured on scope.
> > > So instead of using the equations we did an optimization per module
> > > frequency, verified on a device.
> > > Most of the work was focused on the rise time of the SCL and SDA,
> > > which depends on external load of the bus and PU.
> > > We needed to make sure that in all valid range of load the rise time
> > > is compliant of the SMB spec timing requirements.
> > >
> > > This patch include the final values after extensive testing both at
> > > Nuvoton as well as at customer sites.
> >
> > But:
> > 1) why is it better than do calculations?
> > 2) can it be problematic on theoretically different PCB design in the future?
> >
> > P.S. If there is a good explanations to these and more, elaborate this in the
> > commit message.
> 
> Thanks for your comments,
> 
> 1) The equations were not accurate to begin with.
>   They are an approximation of the ideal value.
>   The ideal value is calculated per frequency of the core module.

This is crucial detail.

> 2) As you wrote , different PCB designs, or specifically to this case
> : the number and type of targets on the bus,
>    impact the required values for the timing registers.
>    Users can recalculate the numbers for each bus ( out of 24) and get
> an even better optimization,
>    but our users chose not to.
>   Instead - we manually picked values per frequency that match the
> entire valid range of targets (from 1 to max number).
>   Then we check against the AMR described in SMB spec and make sure
> that none of the values is exceeding.
>   this process was led by the chip architect and included a lot of testing.
> 
> Do we need to add this entire description to the commit message? It
> sounds a bit too detailed to me.

Yes, please.

-- 
With Best Regards,
Andy Shevchenko



  reply	other threads:[~2024-09-09 10:27 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-30  3:46 [PATCH v2 0/7] i2c: npcm: Bug fixes read/write operation, checkpatch Tyrone Ting
2024-08-30  3:46 ` [PATCH v2 1/7] i2c: npcm: restore slave addresses array length Tyrone Ting
2024-09-05 21:23   ` Andi Shyti
2024-09-06  2:23     ` Tyrone Ting
2024-09-05 21:36   ` Andi Shyti
2024-09-06  2:28     ` Tyrone Ting
2024-09-06  6:49       ` Andi Shyti
2024-09-06 11:40     ` Andy Shevchenko
2024-09-06  7:05   ` Andi Shyti
2024-09-06  8:01     ` Tyrone Ting
2024-08-30  3:46 ` [PATCH v2 2/7] i2c: npcm: correct the read/write operation procedure Tyrone Ting
2024-09-05 21:29   ` Andi Shyti
2024-09-08 10:39     ` Tali Perry
2024-09-09  1:49     ` Tyrone Ting
2024-08-30  3:46 ` [PATCH v2 3/7] i2c: npcm: use a software flag to indicate a BER condition Tyrone Ting
2024-09-05 21:33   ` Andi Shyti
2024-08-30  3:46 ` [PATCH v2 4/7] i2c: npcm: Modify timeout evaluation mechanism Tyrone Ting
2024-09-05 21:39   ` Andi Shyti
2024-09-08 10:47     ` Tali Perry
2024-09-09  1:47       ` Tyrone Ting
2024-08-30  3:46 ` [PATCH v2 5/7] i2c: npcm: Modify the client address assignment Tyrone Ting
2024-08-30 19:16   ` Andy Shevchenko
2024-09-02  1:40     ` Tyrone Ting
2024-09-02 11:54       ` Andy Shevchenko
2024-09-03  2:07         ` Tyrone Ting
2024-08-30  3:46 ` [PATCH v2 6/7] i2c: npcm: use i2c frequency table Tyrone Ting
2024-08-30 19:19   ` Andy Shevchenko
2024-09-01 15:53     ` Tali Perry
2024-09-02 11:53       ` Andy Shevchenko
2024-09-08  8:54         ` Tali Perry
2024-09-09 10:27           ` Andy Shevchenko [this message]
2024-09-05 21:43   ` Andi Shyti
2024-09-09  1:56     ` Tyrone Ting
2024-09-09 12:57       ` Andi Shyti
2024-09-10  1:11         ` Tyrone Ting
2024-08-30  3:46 ` [PATCH v2 7/7] i2c: npcm: Enable slave in eob interrupt Tyrone Ting
2024-09-08 10:50   ` Tali Perry
2024-09-08 10:58 ` [PATCH v2 0/7] i2c: npcm: Bug fixes read/write operation, checkpatch Tali Perry
2024-09-09 13:00 ` Andi Shyti
2024-09-10  1:12   ` Tyrone Ting

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=Zt7Nn9uJSeHFUZZF@smile.fi.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=Avi.Fishman@nuvoton.com \
    --cc=JJLIU0@nuvoton.com \
    --cc=KWLIU@nuvoton.com \
    --cc=andi.shyti@kernel.org \
    --cc=avifishman70@gmail.com \
    --cc=benjaminfair@google.com \
    --cc=kfting@nuvoton.com \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=openbmc@lists.ozlabs.org \
    --cc=rand.sec96@gmail.com \
    --cc=tali.perry1@gmail.com \
    --cc=tali.perry@nuvoton.com \
    --cc=tmaimon77@gmail.com \
    --cc=tomer.maimon@nuvoton.com \
    --cc=venture@google.com \
    --cc=warp5tw@gmail.com \
    --cc=wsa+renesas@sang-engineering.com \
    --cc=wsa@kernel.org \
    --cc=yuenn@google.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