From: "Mark D. Studebaker" <mds@paradyne.com>
To: joakim.tjernlund@lumentis.se
Cc: Tom Rini <trini@kernel.crashing.org>,
linuxppc-embedded@lists.linuxppc.org,
sensors@stimpy.netroedge.com
Subject: Re: 8xx i2c refers to unspecified chip errata
Date: Sun, 17 Nov 2002 15:51:23 -0500 [thread overview]
Message-ID: <3DD8014B.D88A6C34@paradyne.com> (raw)
In-Reply-To: IGEFJKJNHJDCBKALBJLLMEFNFHAA.joakim.tjernlund@lumentis.se
Tom + Joakim,
we're doing a release soon over here at sensors/i2c,
do you want this checked in as-is, with mods, or not at all?
Joakim Tjernlund wrote:
>
> > >
> > > Here is a patch against the PPC 2.4 devel tree for the i2c-algo-8xx.c
> >
> > Can you please split this into logical chunks, or give me a list of each
> > fix in here? Thanks.
>
> ohh, kind of hard to remember all that went into that patch. The path
> has evoled over many days, but I can try summarize. I have tested this code
> pretty well it does not fail for me. Speed has been between 10-150KHz. The
> old code fails as soon you start to stress it a little.
>
> - replace invalidate_dcache_range with flush_dcache_range, since buffers are
> NOT cache aligned. flush will write to memory AND invalidate the cache.
>
> - move the chip errata stuff from irq routine into read/write routines. Made
> it default off since it causes lock ups on my I2C device. I think it causes
> a too short STOP condition. If enabled I2C will behave better than before, but
> may still cause problems if the read/write is interrupted with a signal while
> microcode is enabled.
>
> - set default speed to 60 KHz instead.
>
> - missing/faulty initialization of parameter ram when I2C micro patch is active.
>
> - replaced assingments with mask operations with relevant bits. Example:
> /* Shut down IIC. */
> i2c->i2c_i2mod = 0;
> i2c->i2c_i2mod &= ~1;
>
> - When reading from I2C device, let the receive BD generate interrupt instead of
> the dummy trasmit. This is important since the TX interrupt will be too early sometimes, before
> the RX BD has closed. There is one case where the RX irq is before the TX irq, if iic_mrblr is set
> to match the number of bytes to read. Therefore must the iic_mrblr be one byte larger than
> the expected number of bytes.
>
> - busy wait for small transfers since it's faster.
>
> - save_flags(flags); cli(); cleanups
>
> - interruptible_sleep_on_timeout() instead of interruptible_sleep_on() so it won't hang forever if an
> irq is lost.
>
> Jocke
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
next prev parent reply other threads:[~2002-11-17 20:51 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-10-09 20:14 8xx i2c refers to unspecified chip errata Barker Michael-r43496
2002-10-10 10:35 ` Joakim Tjernlund
2002-10-10 16:18 ` Dan Malek
2002-10-10 16:35 ` Dr. Craig Hollabaugh
2002-10-11 7:28 ` Joakim Tjernlund
2002-10-11 7:50 ` bart
2002-10-11 9:12 ` Joakim Tjernlund
2002-10-11 9:56 ` bart
2002-10-11 12:02 ` Stephan Linke
2002-10-11 12:14 ` bart
2002-10-11 12:31 ` Stephan Linke
2002-10-11 12:46 ` Joakim Tjernlund
2002-10-11 12:44 ` Joakim Tjernlund
2002-10-11 12:55 ` bart
2002-10-11 13:10 ` Joakim Tjernlund
2002-10-15 16:57 ` Tom Rini
2002-10-22 9:15 ` Joakim Tjernlund
2002-10-24 16:10 ` Tom Rini
2002-10-24 18:21 ` Joakim Tjernlund
2002-11-01 11:01 ` Joakim Tjernlund
2002-11-01 19:19 ` Tom Rini
2002-11-17 20:51 ` Mark D. Studebaker [this message]
2002-11-17 21:44 ` Joakim Tjernlund
2002-11-18 14:10 ` Tom Rini
2002-11-18 19:04 ` Mark D. Studebaker
2002-11-18 19:24 ` Joakim Tjernlund
2002-11-18 19:31 ` Tom Rini
2002-11-18 19:42 ` Jean Delvare
2002-11-18 19:46 ` Tom Rini
-- strict thread matches above, loose matches on Subject: below --
2002-10-10 17:01 Barker Michael-r43496
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=3DD8014B.D88A6C34@paradyne.com \
--to=mds@paradyne.com \
--cc=joakim.tjernlund@lumentis.se \
--cc=linuxppc-embedded@lists.linuxppc.org \
--cc=sensors@stimpy.netroedge.com \
--cc=trini@kernel.crashing.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: 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).