Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
coh901318_lli.h
Go to the documentation of this file.
1 /*
2  * driver/dma/coh901318_lli.h
3  *
4  * Copyright (C) 2007-2009 ST-Ericsson
5  * License terms: GNU General Public License (GPL) version 2
6  * Support functions for handling lli for coh901318
7  * Author: Per Friden <[email protected]>
8  */
9 
10 #ifndef COH901318_LLI_H
11 #define COH901318_LLI_H
12 
13 #include <mach/coh901318.h>
14 
15 struct device;
16 
19  struct dma_pool *dmapool;
20  struct device *dev;
21 
22 #ifdef CONFIG_DEBUG_FS
23  int debugfs_pool_counter;
24 #endif
25 };
26 
27 struct device;
37  struct device *dev,
38  size_t lli_nbr, size_t align);
39 
46 
54 struct coh901318_lli *
56  unsigned int len);
57 
64  struct coh901318_lli **lli);
65 
77 int
79  struct coh901318_lli *lli,
80  dma_addr_t src, unsigned int size,
81  dma_addr_t dst, u32 ctrl_chained, u32 ctrl_last);
82 
95 int
97  struct coh901318_lli *lli,
98  dma_addr_t buf, unsigned int size,
99  dma_addr_t dev_addr, u32 ctrl_chained, u32 ctrl_last,
100  enum dma_transfer_direction dir);
101 
116 int
118  struct coh901318_lli *lli,
119  struct scatterlist *sg, unsigned int nents,
120  dma_addr_t dev_addr, u32 ctrl_chained,
121  u32 ctrl, u32 ctrl_last,
122  enum dma_transfer_direction dir, u32 ctrl_irq_mask);
123 
124 #endif /* COH901318_LLI_H */