* Re: Extending Linux async_tx interface
[not found] <9D1E2BDCB5C57B46B56E6D80843439EB055445D7@SDCEXCHANGE01.ad.amcc.com>
@ 2008-07-04 1:23 ` Dan Williams
0 siblings, 0 replies; only message in thread
From: Dan Williams @ 2008-07-04 1:23 UTC (permalink / raw)
To: Subrahmanyam Bolla; +Cc: linux-kernel, Sosnowski, Maciej, Tushar Tyagi, Loc Ho
On Mon, 2008-06-23 at 16:07 -0700, Subrahmanyam Bolla wrote:
> Hi,
>
> I'm working on a new DMA driver for our hardware that supports various
> modes of operations like memory to memory, memory to custom format, and
> visa-versa.
> The current Linux async_tx DMA interface only supports memory to memory
> transfer. We would like to extend this interface to support our
> hardware's new capabilities.
>
> Other than async_memcpy and async_memset operations supported by linux
> async_tx interface, we would like to add something like
> async_mem_buff_cpy,
> async_pkt_mem_cpy and a few more. These new operations use a new format
> for specifying the source and/or destination for doing the transfer.
> To support this we will have new structures as the API parameters.
>
> Could you pls let me know if this is the right approach or if there are
> any other suggestions.
>
It is difficult to know if this is the right approach without knowing
more about the intended usage. For example async_tx is meant for code
paths where it does not matter if an offload engine is available.
Compare that to Haavard's dma-slave implementation where the driver is
explicitly using a specific dma channel[1]. Which approach better fits
what you are trying to accomplish?
--
Dan
[1] http://marc.info/?l=linux-kernel&m=121448921821512&w=2
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2008-07-04 1:24 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <9D1E2BDCB5C57B46B56E6D80843439EB055445D7@SDCEXCHANGE01.ad.amcc.com>
2008-07-04 1:23 ` Extending Linux async_tx interface Dan Williams
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox