lkml.org 
[lkml]   [2012]   [Jan]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH V2 02/12] dmaengine: Add flow controller information to dma_slave_config
    From
    Date
    On Wed, 2012-01-18 at 14:41 +0530, Viresh Kumar wrote:
    > Flow controller is programmable for few controllers and there are few
    > intelligent peripherals like, Synopsys JPEG controller, that needs to be a flow
    > controller of DMA transfers on dest side.
    >
    > For this, currently two drivers, pl08x and dw_dmac, support flow controller to
    > be passed from platform to these drivers.
    >
    > Perhaps, this should be a part of struct dma_slave_config. This patch adds
    > another field device_fc to this structure. User drivers must pass this as true
    > if they want to be flow controller of certain transfers.
    >
    > Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
    > ---
    > include/linux/dmaengine.h | 5 +++++
    > 1 files changed, 5 insertions(+), 0 deletions(-)
    >
    > diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h
    > index 5532bb8..dd1915f 100644
    > --- a/include/linux/dmaengine.h
    > +++ b/include/linux/dmaengine.h
    > @@ -25,6 +25,7 @@
    > #include <linux/uio.h>
    > #include <linux/scatterlist.h>
    > #include <linux/bitmap.h>
    > +#include <linux/types.h>
    > #include <asm/page.h>
    >
    > /**
    > @@ -330,6 +331,9 @@ enum dma_slave_buswidth {
    > * may or may not be applicable on memory sources.
    > * @dst_maxburst: same as src_maxburst but for destination target
    > * mutatis mutandis.
    > + * @device_fc: Flow Controller Settings for ccfg register. Only valid for slave
    ccfg maybe true for your controller, not others...

    > + * channels. Fill with 'true' if peripheral should be flow controller. Direction
    > + * will be selected at Runtime.
    > *
    > * This struct is passed in as configuration data to a DMA engine
    > * in order to set up a certain channel for DMA transport at runtime.
    > @@ -356,6 +360,7 @@ struct dma_slave_config {
    > enum dma_slave_buswidth dst_addr_width;
    > u32 src_maxburst;
    > u32 dst_maxburst;
    > + bool device_fc;
    > };
    >
    > static inline const char *dma_chan_name(struct dma_chan *chan)


    --
    ~Vinod



    \
     
     \ /
      Last update: 2012-01-31 04:55    [W:2.202 / U:0.168 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site