From: Bastian Hecht <hechtb@googlemail.com>
To: linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 1/2] mtd: sh_flctl: Add DMA capabilty
Date: Thu, 04 Oct 2012 10:12:52 +0000 [thread overview]
Message-ID: <CABYn4swdBX+verPTDKywC_U3xQboSSGFoezCkYth4PXVE1QcbQ@mail.gmail.com> (raw)
In-Reply-To: <Pine.LNX.4.64.1210021534570.15778@axis700.grange>
Hey Guennadi,
2012/10/2 Guennadi Liakhovetski <g.liakhovetski@gmx.de>:
> On Tue, 2 Oct 2012, Bastian Hecht wrote:
>
>> The code probes if DMA channels can get allocated and tears them down at
>> removal/failure if needed.
>> If available it uses them to transfer the data part (not ECC). On
>> failure we fall back to PIO mode.
>>
>> Based on Guennadi Liakhovetski's code from the sh_mmcif driver.
>>
>> Signed-off-by: Bastian Hecht <hechtb@gmail.com>
>
> Looks mostly good to me, just a couple of cosmetic remarks below. They are
> not critical, so, I won't be upset, if you fix them later:-) In any case
>
> Reviewed-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Great, will add that to the next version!
>> ---
>> drivers/mtd/nand/sh_flctl.c | 174 +++++++++++++++++++++++++++++++++++++++++-
>> include/linux/mtd/sh_flctl.h | 12 +++
>> 2 files changed, 183 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/mtd/nand/sh_flctl.c b/drivers/mtd/nand/sh_flctl.c
>> index 4fbfe96..0fead2a 100644
>> --- a/drivers/mtd/nand/sh_flctl.c
>> +++ b/drivers/mtd/nand/sh_flctl.c
>> @@ -24,10 +24,13 @@
>> #include <linux/module.h>
>> #include <linux/kernel.h>
>> #include <linux/delay.h>
>> +#include <linux/dmaengine.h>
>> +#include <linux/dma-mapping.h>
>> #include <linux/interrupt.h>
>> #include <linux/io.h>
>> #include <linux/platform_device.h>
>> #include <linux/pm_runtime.h>
>> +#include <linux/sh_dma.h>
>> #include <linux/slab.h>
>> #include <linux/string.h>
>>
>> @@ -106,6 +109,84 @@ static void wait_completion(struct sh_flctl *flctl)
>> writeb(0x0, FLTRCR(flctl));
>> }
>>
>> +static void flctl_dma_complete(void *param)
>> +{
>> + struct sh_flctl *flctl = param;
>> +
>> + complete(&flctl->dma_complete);
>
> I think I mentioned in the first review, that it is good to include
> headers everywhere, where they are needed and not rely on pulling them in
> via other headers. So, it would be good to also include complete.h here
> directly.
Ok sure, I will include that as well.
> [snip]
>> @@ -308,13 +462,23 @@ static enum flctl_ecc_res_t read_ecfiforeg
>> static void write_fiforeg(struct sh_flctl *flctl, int rlen, int offset)
>> {
>> int i, len_4align;
>> - unsigned long *data = (unsigned long *)&flctl->done_buff[offset];
>> + unsigned long *buf = (unsigned long *)&flctl->done_buff[offset];
>> void *fifo_addr = (void *)FLDTFIFO(flctl);
>>
>> len_4align = (rlen + 3) / 4;
>> +
>> + for (i = 0; i < len_4align; i++)
>> + buf[i] = cpu_to_be32(buf[i]);
>
> indentation ran away here.
Ah nice, thanks for the hawk's eye ;)
> Thanks
> Guennadi
Thanks!
Bastian
next prev parent reply other threads:[~2012-10-04 10:12 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-02 13:12 [PATCH 0/2] Add DMA and device tree support to the flash controller FLCTL Bastian Hecht
2012-10-02 13:12 ` [PATCH 1/2] mtd: sh_flctl: Add DMA capabilty Bastian Hecht
2012-10-02 13:55 ` Guennadi Liakhovetski
2012-10-04 10:12 ` Bastian Hecht [this message]
2012-10-02 13:12 ` [PATCH 2/2] mtd: sh_flctl: Add device tree support Bastian Hecht
2012-10-02 13:54 ` Arnd Bergmann
2012-10-02 14:04 ` Guennadi Liakhovetski
2012-10-02 20:47 ` Arnd Bergmann
2012-10-04 10:07 ` Bastian Hecht
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=CABYn4swdBX+verPTDKywC_U3xQboSSGFoezCkYth4PXVE1QcbQ@mail.gmail.com \
--to=hechtb@googlemail.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).