]> Pileus Git - ~andy/linux/blobdiff - drivers/dma/ste_dma40_ll.h
Merge branch 'for-2.6.39/core' of git://git.kernel.dk/linux-2.6-block
[~andy/linux] / drivers / dma / ste_dma40_ll.h
index 46578a661b2822f89ebbddc5254f0b49847f7823..195ee65ee7f3513111f212c3b51a69bd92d96a67 100644 (file)
@@ -293,6 +293,13 @@ struct d40_def_lcsp {
 
 /* Physical channels */
 
+enum d40_lli_flags {
+       LLI_ADDR_INC    = 1 << 0,
+       LLI_TERM_INT    = 1 << 1,
+       LLI_CYCLIC      = 1 << 2,
+       LLI_LAST_LINK   = 1 << 3,
+};
+
 void d40_phy_cfg(struct stedma40_chan_cfg *cfg,
                 u32 *src_cfg,
                 u32 *dst_cfg,
@@ -308,30 +315,15 @@ int d40_phy_sg_to_lli(struct scatterlist *sg,
                      struct d40_phy_lli *lli,
                      dma_addr_t lli_phys,
                      u32 reg_cfg,
-                     u32 data_width1,
-                     u32 data_width2,
-                     int psize);
+                     struct stedma40_half_channel_info *info,
+                     struct stedma40_half_channel_info *otherinfo,
+                     unsigned long flags);
 
 /* Logical channels */
 
-struct d40_log_lli *d40_log_buf_to_lli(struct d40_log_lli *lli_sg,
-                                      dma_addr_t addr,
-                                      int size,
-                                      u32 lcsp13, /* src or dst*/
-                                      u32 data_width1, u32 data_width2,
-                                      bool addr_inc);
-
-int d40_log_sg_to_dev(struct scatterlist *sg,
-                     int sg_len,
-                     struct d40_log_lli_bidir *lli,
-                     struct d40_def_lcsp *lcsp,
-                     u32 src_data_width,
-                     u32 dst_data_width,
-                     enum dma_data_direction direction,
-                     dma_addr_t dev_addr);
-
 int d40_log_sg_to_lli(struct scatterlist *sg,
                      int sg_len,
+                     dma_addr_t dev_addr,
                      struct d40_log_lli *lli_sg,
                      u32 lcsp13, /* src or dst*/
                      u32 data_width1, u32 data_width2);
@@ -339,11 +331,11 @@ int d40_log_sg_to_lli(struct scatterlist *sg,
 void d40_log_lli_lcpa_write(struct d40_log_lli_full *lcpa,
                            struct d40_log_lli *lli_dst,
                            struct d40_log_lli *lli_src,
-                           int next);
+                           int next, unsigned int flags);
 
 void d40_log_lli_lcla_write(struct d40_log_lli *lcla,
                            struct d40_log_lli *lli_dst,
                            struct d40_log_lli *lli_src,
-                           int next);
+                           int next, unsigned int flags);
 
 #endif /* STE_DMA40_LLI_H */