Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
drivers
dma
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
17
struct
coh901318_pool
{
18
spinlock_t
lock
;
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
;
36
int
coh901318_pool_create
(
struct
coh901318_pool
*
pool
,
37
struct
device
*
dev
,
38
size_t
lli_nbr,
size_t
align
);
39
45
int
coh901318_pool_destroy
(
struct
coh901318_pool
*
pool
);
46
54
struct
coh901318_lli
*
55
coh901318_lli_alloc
(
struct
coh901318_pool
*
pool
,
56
unsigned
int
len);
57
63
void
coh901318_lli_free
(
struct
coh901318_pool
*
pool
,
64
struct
coh901318_lli
**
lli
);
65
77
int
78
coh901318_lli_fill_memcpy
(
struct
coh901318_pool
*
pool
,
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
96
coh901318_lli_fill_single
(
struct
coh901318_pool
*
pool
,
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
117
coh901318_lli_fill_sg
(
struct
coh901318_pool
*
pool
,
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 */
Generated on Thu Jan 10 2013 13:29:17 for Linux Kernel by
1.8.2