From: arnd@arndb.de (Arnd Bergmann)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 1/4] dmaengine: mmp-pdma support
Date: Tue, 14 Aug 2012 09:33:25 +0000 [thread overview]
Message-ID: <201208140933.26061.arnd@arndb.de> (raw)
In-Reply-To: <1344917519-9505-2-git-send-email-zhangfei.gao@marvell.com>
On Tuesday 14 August 2012, Zhangfei Gao wrote:
> 1. virtual channel vs. physical channel
> Virtual channel is managed by dmaengine
> Physical channel handling resource, such as irq
> Physical channel is alloced dynamically as descending priority,
> freed immediately when irq done.
> The availble highest priority physically channel will alwayes be alloced
>
> Issue pending list -> alloc highest dma physically channel available -> dma done -> free physically channel
>
> 2. list: running list & pending list
> submit: desc list -> pending list
> issue_pending_list: if (IDLE) pending list -> running list; free pending list (RUN)
> irq: free running list (IDLE)
> check pendlist -> pending list -> running list; free pending list (RUN)
>
> 3. irq:
> Each list generate one irq, calling callback
> One list may contain several desc chain, in such case, make sure only the last desc list generate irq.
>
> 4. async
> Submit will add desc chain to pending list, which can be multi-called
> If multi desc chain is submitted, only the last desc would generate irq -> call back
> If IDLE, issue_pending_list start pending_list, transforming pendlist to running list
> If RUN, irq will start pending list
>
> 5. test
> 5.1 pxa3xx_nand on pxa910
> 5.2 insmod dmatest.ko (threads_per_chan=y)
> By default drivers/dma/dmatest.c test every channel and test memcpy with 1 threads per channel
>
> Signed-off-by: Zhangfei Gao <zhangfei.gao@marvell.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
next prev parent reply other threads:[~2012-08-14 9:33 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-14 4:11 [PATCH v3 0/4] dmaengine: add support mmp-pdma Zhangfei Gao
2012-08-14 4:11 ` [PATCH v3 1/4] dmaengine: mmp-pdma support Zhangfei Gao
2012-08-14 8:30 ` Russell King - ARM Linux
2012-08-15 7:44 ` zhangfei gao
2012-08-15 8:04 ` Russell King - ARM Linux
2012-08-15 9:09 ` zhangfei gao
2012-08-14 9:33 ` Arnd Bergmann [this message]
2012-08-14 4:11 ` [PATCH v3 2/4] dmaengine: mmp_tdma: add dt support Zhangfei Gao
2012-08-14 9:34 ` Arnd Bergmann
2012-08-15 7:47 ` zhangfei gao
2012-08-14 4:11 ` [PATCH v3 3/4] dmatest: add dmaengine_slave_config for DMA_MEMCPY Zhangfei Gao
2012-08-14 8:20 ` Russell King - ARM Linux
2012-08-15 7:29 ` zhangfei gao
2012-08-14 4:11 ` [PATCH v3 4/4] mtd: pxa3xx-nand: replace pxa_request_dma with dmaengine Zhangfei Gao
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=201208140933.26061.arnd@arndb.de \
--to=arnd@arndb.de \
--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 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.