Thread (12 messages) 12 messages, 2 authors, 2013-10-06
STALE4624d

[PATCH 2/3 V3] i2c: mxs: Rework the PIO mode operation

From: marex@denx.de (Marek Vasut)
Date: 2013-09-30 11:38:26
Also in: linux-i2c

Hey Wolfram,
On Mon, Sep 30, 2013 at 01:23:54AM +0200, Marek Vasut wrote:
quoted
Analyze and rework the PIO mode operation. The PIO mode operation
was unreliable on MX28, by analyzing the bus with LA, the checks
for when data were available or were to be sent were wrong.

The PIO WRITE has to be completely reworked as it multiple problems.
The MX23 datasheet helped here, see comments in the code for details.
The problems boil down to:
- RUN bit in CTRL0 must be set after DATA register was written
- The PIO transfer must be 4 bytes long tops, otherwise use

  clock stretching.

Both of these fixes are implemented.

The PIO READ operation can only be done for up to four bytes as
we are unable to read out the data from the DATA register fast
enough.

This patch also tries to document the investigation within the
code.

Signed-off-by: Marek Vasut <marex@denx.de>
Yay, there it is. Thanks, looks good to me. Will wait a few days so
people can donate Tested-by tags.
Sorry for the delay, things're pretty hectic recently.

Are you coming to ELCE btw ?

Best regards,
Marek Vasut
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help