All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lucas Stach <l.stach-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
To: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org>
Cc: linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	Alexandre Belloni
	<alexandre.belloni-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>,
	Fabio Estevam <r49496-KZfg59tc24xl57MIdRCFDg@public.gmane.org>,
	Shawn Guo <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
	Wolfram Sang <wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>,
	to-fleischer-zqRNUXuvxA0b1SvskN2V4Q@public.gmane.org
Subject: Re: [PATCH] i2c: mxs: Rework the PIO mode operation
Date: Mon, 15 Jul 2013 14:14:39 +0200	[thread overview]
Message-ID: <1373890479.4172.3.camel@weser.hi.pengutronix.de> (raw)
In-Reply-To: <201307150405.53110.marex-ynQEQJNshbs@public.gmane.org>

Hi Marek,

Am Montag, den 15.07.2013, 04:05 +0200 schrieb Marek Vasut:
> Hi,
> 
> > 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-ynQEQJNshbs@public.gmane.org>
> > Cc: Alexandre Belloni <alexandre.belloni-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
> > Cc: Fabio Estevam <r49496-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
> > Cc: Lucas Stach <l.stach-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
> > Cc: Shawn Guo <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> > Cc: Wolfram Sang <wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>
> > Cc: <to-fleischer-zqRNUXuvxA0b1SvskN2V4Q@public.gmane.org>
> 
> I so far got confirmation from ALexandre this patch works. Can someone else test 
> it please? I'd like to roll out a final version to close this issue.
> 
Sorry, I wasn't able to test it until now. I now have the respective
hardware at my desk again, so I'll get you a report by latest day after
tomorrow.

I'll post some comments to the patch itself in the meantime.

> One question remain though -- shall we have the PIO as an experimental feature 
> and disable it by default OR not ?
> 
> Thanks!
> 
> Best regards,
> Marek Vasut

-- 
Pengutronix e.K.                           | Lucas Stach                 |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-5076 |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

  parent reply	other threads:[~2013-07-15 12:14 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-08 19:46 [PATCH] i2c: mxs: Rework the PIO mode operation Marek Vasut
     [not found] ` <1373312807-13227-1-git-send-email-marex-ynQEQJNshbs@public.gmane.org>
2013-07-08 19:49   ` Marek Vasut
2013-07-09 13:21   ` Alexandre Belloni
2013-07-15  2:05   ` Marek Vasut
     [not found]     ` <201307150405.53110.marex-ynQEQJNshbs@public.gmane.org>
2013-07-15 12:14       ` Lucas Stach [this message]
     [not found]         ` <1373890479.4172.3.camel-WzVe3FnzCwFR6QfukMTsflXZhhPuCNm+@public.gmane.org>
2013-07-15 12:27           ` Marek Vasut
2013-07-15 14:58       ` Shawn Guo
     [not found]         ` <20130715145836.GB23589-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>
2013-07-15 23:25           ` Marek Vasut
2013-07-17 12:16       ` to-fleischer-zqRNUXuvxA0b1SvskN2V4Q
     [not found]         ` <1UzQet-1Vf4pE0-VM4m3MaA7PGi2rA4ip7KQzlaCuRwF3y+@public.gmane.org>
2013-07-17 16:23           ` Marek Vasut
2013-07-17 17:04           ` Marek Vasut
     [not found]             ` <201307171904.00784.marex-ynQEQJNshbs@public.gmane.org>
2013-07-18 19:12               ` Torsten Fleischer
     [not found]                 ` <3767128.gOKkIqK4p5-BVXpyJtzy6LO1Ldfs0Uenw@public.gmane.org>
2013-07-21 21:21                   ` Marek Vasut
     [not found]                     ` <201307212321.22207.marex-ynQEQJNshbs@public.gmane.org>
2013-07-28  9:47                       ` Torsten Fleischer
2013-07-15 12:43   ` Lucas Stach
     [not found]     ` <1373892198.4172.17.camel-WzVe3FnzCwFR6QfukMTsflXZhhPuCNm+@public.gmane.org>
2013-07-15 23:24       ` Marek Vasut

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=1373890479.4172.3.camel@weser.hi.pengutronix.de \
    --to=l.stach-bicnvbalz9megne8c9+irq@public.gmane.org \
    --cc=alexandre.belloni-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org \
    --cc=linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=marex-ynQEQJNshbs@public.gmane.org \
    --cc=r49496-KZfg59tc24xl57MIdRCFDg@public.gmane.org \
    --cc=shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
    --cc=to-fleischer-zqRNUXuvxA0b1SvskN2V4Q@public.gmane.org \
    --cc=wsa-z923LK4zBo2bacvFa/9K2g@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: link
Be 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.