public inbox for linux-i2c@vger.kernel.org
 help / color / mirror / Atom feed
From: Timur Tabi <timur@freescale.com>
To: Jon Smirl <jonsmirl@gmail.com>
Cc: Scott Wood <scottwood@freescale.com>,
	Linux I2C <i2c@lm-sensors.org>,
	Linuxppc-dev@ozlabs.org
Subject: Re: [PATCH] powerpc: i2c-mpc: make speed registers configurable via FDT
Date: Thu, 31 Jul 2008 10:55:22 -0500	[thread overview]
Message-ID: <4891E06A.4070608@freescale.com> (raw)
In-Reply-To: <9e4733910807310849g7e5612dbk9536733e061af8ad@mail.gmail.com>

Jon Smirl wrote:

> Aren't the tables in the manual there just to make it easy for a human
> to pick out the line they want? For a computer you'd program the
> formula that was used to create the tables.

Actually, the tables in the manuals are just an example of what can be
programmed.  They don't cover all cases.  The tables assume a specific value of
DFSR.

For 8xxx, you want to use AN2919 to figure out how to really program the device.

The table I generated for U-Boot is based on the calculations outlined in
AN2919.  I debated trying to implement the actual algorithm, but decided that
pre-calculating the values was better.  The algorithm is very convoluted.

> I agree that it took me half an hour to figure out the formula that
> was needed to compute the i2s clocks, but once you figure out the
> formula it solves all of the cases and no one needs to read the manual
> any more. The i2c formula may even need a small loop which compares
> different solutions looking for the smallest error term. But it's a
> small space to search.

My understanding is that the algorithm itself is different on 8xxx vs. 52xx.  It
might be possible to combine 5200A and 5200B into one table/algorithm, but I
don't think you can combine it with the 8xxx table.

-- 
Timur Tabi
Linux kernel developer at Freescale

  reply	other threads:[~2008-07-31 15:55 UTC|newest]

Thread overview: 79+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <488982B5.4070102@grandegger.com>
     [not found] ` <4889942C.4040800@scram.de>
     [not found]   ` <48899736.8020400@grandegger.com>
     [not found]     ` <fa686aa40807250612g34b5167dtbe70c810f30a5d32@mail.gmail.com>
     [not found]       ` <ed82fe3e0807250721n115d28c7ha1f641c9175c473d@mail.gmail.com>
     [not found]         ` <4889EFFE.2070201@grandegger.com>
     [not found]           ` <4889FD1D.4010804@freescale.com>
     [not found]             ` <20080727012722.GH12191@secretlab.ca>
     [not found]               ` <4891A744.6060005@grandegger.com>
2008-07-31 15:49                 ` [PATCH] powerpc: i2c-mpc: make speed registers configurable via FDT Jon Smirl
2008-07-31 15:55                   ` Timur Tabi [this message]
     [not found]                     ` <4891E06A.4070608-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2008-07-31 23:32                       ` Trent Piepho
2008-08-01 13:17                         ` [i2c] " Timur Tabi
2008-08-01 15:47                           ` Scott Wood
2008-08-01 19:47                           ` Trent Piepho
     [not found]                             ` <Pine.LNX.4.58.0808011246290.10341-13q4cmjDBaTP3RPoUHIrnuTW4wlIGRCZ@public.gmane.org>
2008-08-01 19:50                               ` Timur Tabi
2008-07-31 17:22                   ` Wolfgang Grandegger
     [not found]                     ` <4891F4D8.9090905-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2008-07-31 17:31                       ` Grant Likely
2008-07-31 17:51                         ` Wolfgang Grandegger
     [not found]                         ` <fa686aa40807311031r66f6451aw206faf54509c14d9-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-07-31 17:54                           ` Timur Tabi
2008-07-31 18:07                             ` Wolfgang Grandegger
     [not found]                               ` <4891FF51.4020701-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2008-07-31 18:06                                 ` Timur Tabi
2008-07-31 18:07                               ` Grant Likely
     [not found]                                 ` <fa686aa40807311107m44ce7fbk35e94d1a24b992fb-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-07-31 18:10                                   ` Timur Tabi
     [not found]                                     ` <48920016.5000506-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2008-07-31 18:21                                       ` Grant Likely
2008-07-31 18:09                             ` Grant Likely
     [not found]                               ` <20080731180959.GA29057-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
2008-07-31 18:13                                 ` Timur Tabi
2008-07-31 18:28                                   ` Grant Likely
     [not found]                                     ` <20080731182810.GB29097-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
2008-07-31 18:35                                       ` Timur Tabi
2008-07-31 18:57                                         ` Jon Smirl
     [not found]                                           ` <9e4733910807311157q358640ddyef1f14865c069b8-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-07-31 19:01                                             ` Timur Tabi
2008-07-31 19:25                                             ` Grant Likely
2008-08-01  0:22                                           ` [i2c] " Trent Piepho
     [not found]                                             ` <Pine.LNX.4.58.0807311656250.10341-13q4cmjDBaTP3RPoUHIrnuTW4wlIGRCZ@public.gmane.org>
2008-08-01  1:19                                               ` Jon Smirl
     [not found]                                                 ` <9e4733910807311819i60872285ga4829c841185fdc0-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-08-01  1:36                                                   ` Trent Piepho
     [not found]                                                     ` <Pine.LNX.4.58.0807311828580.10341-13q4cmjDBaTP3RPoUHIrnuTW4wlIGRCZ@public.gmane.org>
2008-08-01  1:44                                                       ` Jon Smirl
     [not found]                                                         ` <9e4733910807311844p142b26ffyb4105df3e136f65-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-08-01 15:02                                                           ` Timur Tabi
2008-08-01 16:05                                                             ` [i2c] " Jon Smirl
2008-08-01  7:29                                                     ` Wolfgang Grandegger
2008-08-01  2:03                                                 ` Grant Likely
2008-08-01  2:35                                                   ` Jon Smirl
2008-08-01 13:25                                                     ` Timur Tabi
2008-08-01 14:28                                                       ` Jon Smirl
     [not found]                                                       ` <ed82fe3e0808010625q53680d42l83f28a6df835f959-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-08-01 14:32                                                         ` Jon Smirl
2008-08-01 21:14                                                           ` [i2c] " Trent Piepho
2008-08-01  7:25                                                 ` Wolfgang Grandegger
2008-08-01 14:38                                                   ` Grant Likely
     [not found]                                         ` <48920607.5040606-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2008-07-31 19:01                                           ` Scott Wood
2008-07-31 19:08                                             ` Timur Tabi
2008-07-31 19:15                                               ` Scott Wood
     [not found]                                                 ` <48920F69.6020909-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2008-07-31 19:19                                                   ` Timur Tabi
     [not found]                                                     ` <48921057.8030807-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2008-07-31 19:21                                                       ` Scott Wood
     [not found]                                                         ` <489210AF.7000909-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2008-07-31 19:22                                                           ` Timur Tabi
2008-07-31 19:11                                             ` Jon Smirl
2008-07-31 19:14                                         ` Grant Likely
2008-07-31 19:24                                         ` Wolfgang Grandegger
     [not found]                                           ` <48921187.1090101-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2008-07-31 19:24                                             ` Timur Tabi
2008-07-31 19:54                                               ` Wolfgang Grandegger
2008-07-31 19:58                                                 ` Timur Tabi
2008-07-31 20:17                                                   ` Wolfgang Grandegger
     [not found]                                                     ` <48921DED.6010403-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2008-07-31 20:19                                                       ` Timur Tabi
2008-07-31 20:28                                                         ` Wolfgang Grandegger
     [not found]                                                           ` <48922087.4050903-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2008-07-31 20:28                                                             ` Timur Tabi
     [not found]                                                         ` <48921E44.7010502-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2008-07-31 20:30                                                           ` Grant Likely
2008-07-31 20:32                                                       ` Jon Smirl
     [not found]                                                         ` <9e4733910807311332q611b43b3y26f64b5269ccb657-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-07-31 20:35                                                           ` Grant Likely
     [not found]                                                             ` <fa686aa40807311335t1dd123d0mc385234ebe55248-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-07-31 20:37                                                               ` Timur Tabi
2008-07-31 20:48                                                                 ` Grant Likely
2008-07-31 20:55                                                                   ` Jon Smirl
     [not found]                                                                     ` <9e4733910807311355q3394b4bfg66c37055384451f7-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-07-31 20:56                                                                       ` Scott Wood
2008-07-31 20:56                                                                       ` Timur Tabi
2008-07-31 21:03                                                                         ` Jon Smirl
     [not found]                                                                           ` <9e4733910807311403o63c37366ldae30e873f33a21e-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-07-31 21:10                                                                             ` Timur Tabi
2008-07-31 21:14                                                                           ` Wolfgang Grandegger
     [not found]                                                                             ` <48922B40.3010808-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2008-07-31 21:17                                                                               ` Timur Tabi
2008-08-01  1:16                                                                                 ` [i2c] " Trent Piepho
2008-08-01  0:57                                                             ` Trent Piepho
2008-07-31 20:35                                                           ` Timur Tabi
     [not found]                                                             ` <48922218.9020503-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2008-07-31 20:43                                                               ` Jon Smirl
     [not found]                                                                 ` <9e4733910807311343h3a1b21dbub15754090a67fac6-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-07-31 20:44                                                                   ` Timur Tabi
2008-07-31 19:59                                                 ` Grant Likely
     [not found]                                                   ` <20080731195911.GA29610-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
2008-07-31 20:00                                                     ` Timur Tabi
2008-07-31 20:20                                                   ` Wolfgang Grandegger
     [not found]                                                     ` <48921EA2.1080600-5Yr1BZd7O62+XT7JhA+gdA@public.gmane.org>
2008-07-31 20:19                                                       ` Timur Tabi
2008-08-01  0:46                                                   ` [i2c] " Trent Piepho
     [not found]                                                     ` <Pine.LNX.4.58.0807311742230.10341-13q4cmjDBaTP3RPoUHIrnuTW4wlIGRCZ@public.gmane.org>
2008-08-01 14:34                                                       ` Grant Likely
2008-08-01 14:48                                                     ` [i2c] " Geert Uytterhoeven
2008-07-31 17:35                       ` Jon Smirl

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=4891E06A.4070608@freescale.com \
    --to=timur@freescale.com \
    --cc=Linuxppc-dev@ozlabs.org \
    --cc=i2c@lm-sensors.org \
    --cc=jonsmirl@gmail.com \
    --cc=scottwood@freescale.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