From: nicolas.ferre@atmel.com (Nicolas Ferre)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] dmaengine: at_xdmac: fix for chan conf simplification
Date: Tue, 3 Mar 2015 19:34:26 +0100 [thread overview]
Message-ID: <54F5FEB2.4040708@atmel.com> (raw)
In-Reply-To: <54DCC7BF.6010001@atmel.com>
Le 12/02/2015 16:33, Nicolas Ferre a ?crit :
> Le 12/02/2015 16:30, Ludovic Desroches a ?crit :
>> When simplificating the channel configuration, the cyclic case has been
>> forgotten. It leads to use bad configuration causing many bugs.
>>
>> Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com>
>
> Oh, yes indeed, pretty important:
> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Vinod,
Can we have this fix in 4.0 please?
Bye,
>> ---
>> drivers/dma/at_xdmac.c | 7 +++----
>> 1 file changed, 3 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/dma/at_xdmac.c b/drivers/dma/at_xdmac.c
>> index 710546d..895b8bd 100644
>> --- a/drivers/dma/at_xdmac.c
>> +++ b/drivers/dma/at_xdmac.c
>> @@ -664,7 +664,6 @@ at_xdmac_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t buf_addr,
>> struct at_xdmac_desc *first = NULL, *prev = NULL;
>> unsigned int periods = buf_len / period_len;
>> int i;
>> - u32 cfg;
>>
>> dev_dbg(chan2dev(chan), "%s: buf_addr=%pad, buf_len=%zd, period_len=%zd, dir=%s, flags=0x%lx\n",
>> __func__, &buf_addr, buf_len, period_len,
>> @@ -700,17 +699,17 @@ at_xdmac_prep_dma_cyclic(struct dma_chan *chan, dma_addr_t buf_addr,
>> if (direction == DMA_DEV_TO_MEM) {
>> desc->lld.mbr_sa = atchan->per_src_addr;
>> desc->lld.mbr_da = buf_addr + i * period_len;
>> - cfg = atchan->cfg[AT_XDMAC_DEV_TO_MEM_CFG];
>> + desc->lld.mbr_cfg = atchan->cfg[AT_XDMAC_DEV_TO_MEM_CFG];
>> } else {
>> desc->lld.mbr_sa = buf_addr + i * period_len;
>> desc->lld.mbr_da = atchan->per_dst_addr;
>> - cfg = atchan->cfg[AT_XDMAC_MEM_TO_DEV_CFG];
>> + desc->lld.mbr_cfg = atchan->cfg[AT_XDMAC_MEM_TO_DEV_CFG];
>> }
>> desc->lld.mbr_ubc = AT_XDMAC_MBR_UBC_NDV1
>> | AT_XDMAC_MBR_UBC_NDEN
>> | AT_XDMAC_MBR_UBC_NSEN
>> | AT_XDMAC_MBR_UBC_NDE
>> - | period_len >> at_xdmac_get_dwidth(cfg);
>> + | period_len >> at_xdmac_get_dwidth(desc->lld.mbr_cfg);
>>
>> dev_dbg(chan2dev(chan),
>> "%s: lld: mbr_sa=%pad, mbr_da=%pad, mbr_ubc=0x%08x\n",
>>
>
>
--
Nicolas Ferre
next prev parent reply other threads:[~2015-03-03 18:34 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-12 15:30 [PATCH] dmaengine: at_xdmac: fix for chan conf simplification Ludovic Desroches
2015-02-12 15:33 ` Nicolas Ferre
2015-03-03 18:34 ` Nicolas Ferre [this message]
2015-03-05 9:00 ` Vinod Koul
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=54F5FEB2.4040708@atmel.com \
--to=nicolas.ferre@atmel.com \
--cc=linux-arm-kernel@lists.infradead.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).