From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
To: Simon Horman <horms@verge.net.au>
Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>,
Olof Johansson <olof@lixom.net>,
Linux-SH <linux-sh@vger.kernel.org>,
linux-kernel@vger.kernel.org, Vinod Koul <vinod.koul@intel.com>
Subject: Re: [PATCH resend] shdma: fixup sh_dmae_get_partial() calculation error
Date: Tue, 30 Jul 2013 11:22:31 +0200 (CEST) [thread overview]
Message-ID: <Pine.LNX.4.64.1307301114020.25629@axis700.grange> (raw)
In-Reply-To: <20130730084957.GA17209@verge.net.au>
Hi Simon
On Tue, 30 Jul 2013, Simon Horman wrote:
> [ Cc Vinod ]
>
> On Tue, Jul 23, 2013 at 11:12:41PM -0700, Kuninori Morimoto wrote:
> > sh_desc->hw.tcr is controlling real data size,
> > and, register TCR is controlling data transfer count
> > which was xmit_shifted value of hw.tcr.
> > Current sh_dmae_get_partial() is calculating in different unit.
> > This patch fixes it.
> >
> > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
>
> Can I confirm that this was a regression introduced by
> 4f46f8ac80416b0e8fd3aba6a0d842205fb29140
> ("dmaengine: shdma: restore partial transfer calculation") ?
No, don't think so. That patch only restores what was accidentally deleted
from the driver before. So, you cannot say, that before that patch the
calculation was correct. And even the way it restores it was already wrong
before. The error goes back to the original implementation:
commit c014906a870ce70e009def0c9d170ccabeb0be63
Author: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Date: Thu Feb 18 16:30:02 2010 +0000
dmaengine: shdma: extend .device_terminate_all() to record partial transfer
Thanks
Guennadi
>
> > ---
> > >> Guennadi
> >
> > Could you please check this patch, and give it your Acked-by ?
> >
> > drivers/dma/sh/shdma.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/dma/sh/shdma.c b/drivers/dma/sh/shdma.c
> > index b70709b..d670b8b 100644
> > --- a/drivers/dma/sh/shdma.c
> > +++ b/drivers/dma/sh/shdma.c
> > @@ -388,8 +388,8 @@ static size_t sh_dmae_get_partial(struct shdma_chan *schan,
> > shdma_chan);
> > struct sh_dmae_desc *sh_desc = container_of(sdesc,
> > struct sh_dmae_desc, shdma_desc);
> > - return (sh_desc->hw.tcr - sh_dmae_readl(sh_chan, TCR)) <<
> > - sh_chan->xmit_shift;
> > + return sh_desc->hw.tcr -
> > + (sh_dmae_readl(sh_chan, TCR) << sh_chan->xmit_shift);
> > }
> >
> > /* Called from error IRQ or NMI */
> > --
> > 1.7.9.5
> >
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-sh" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >
>
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
http://www.open-technology.de/
next prev parent reply other threads:[~2013-07-30 9:22 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1373422152-29976-1-git-send-email-horms+renesas@verge.net.au>
[not found] ` <20130716012041.GA942@verge.net.au>
[not found] ` <20130723023907.GC14983@quad.lixom.net>
[not found] ` <20130723041220.GA22253@verge.net.au>
[not found] ` <87zjtddgtg.wl%kuninori.morimoto.gx@renesas.com>
[not found] ` <20130724034009.GA18355@verge.net.au>
[not found] ` <87d2q8v6fs.wl%kuninori.morimoto.gx@renesas.com>
2013-07-24 6:12 ` Kuninori Morimoto
2013-07-24 8:43 ` Guennadi Liakhovetski
2013-07-26 2:38 ` Simon Horman
2013-07-30 8:49 ` Simon Horman
2013-07-30 9:22 ` Guennadi Liakhovetski [this message]
2013-07-31 0:52 ` Simon Horman
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=Pine.LNX.4.64.1307301114020.25629@axis700.grange \
--to=g.liakhovetski@gmx.de \
--cc=horms@verge.net.au \
--cc=kuninori.morimoto.gx@renesas.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=olof@lixom.net \
--cc=vinod.koul@intel.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
all inboxes | Powered by JetHome®