diff options
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/dw_dmac.h | 7 | ||||
-rw-r--r-- | include/linux/edma.h | 29 | ||||
-rw-r--r-- | include/linux/platform_data/mmp_dma.h | 19 |
3 files changed, 55 insertions, 0 deletions
diff --git a/include/linux/dw_dmac.h b/include/linux/dw_dmac.h index 2412e02d7c0f..e1c8c9e919ac 100644 --- a/include/linux/dw_dmac.h +++ b/include/linux/dw_dmac.h | |||
@@ -19,6 +19,10 @@ | |||
19 | * @nr_channels: Number of channels supported by hardware (max 8) | 19 | * @nr_channels: Number of channels supported by hardware (max 8) |
20 | * @is_private: The device channels should be marked as private and not for | 20 | * @is_private: The device channels should be marked as private and not for |
21 | * by the general purpose DMA channel allocator. | 21 | * by the general purpose DMA channel allocator. |
22 | * @block_size: Maximum block size supported by the controller | ||
23 | * @nr_masters: Number of AHB masters supported by the controller | ||
24 | * @data_width: Maximum data width supported by hardware per AHB master | ||
25 | * (0 - 8bits, 1 - 16bits, ..., 5 - 256bits) | ||
22 | */ | 26 | */ |
23 | struct dw_dma_platform_data { | 27 | struct dw_dma_platform_data { |
24 | unsigned int nr_channels; | 28 | unsigned int nr_channels; |
@@ -29,6 +33,9 @@ struct dw_dma_platform_data { | |||
29 | #define CHAN_PRIORITY_ASCENDING 0 /* chan0 highest */ | 33 | #define CHAN_PRIORITY_ASCENDING 0 /* chan0 highest */ |
30 | #define CHAN_PRIORITY_DESCENDING 1 /* chan7 highest */ | 34 | #define CHAN_PRIORITY_DESCENDING 1 /* chan7 highest */ |
31 | unsigned char chan_priority; | 35 | unsigned char chan_priority; |
36 | unsigned short block_size; | ||
37 | unsigned char nr_masters; | ||
38 | unsigned char data_width[4]; | ||
32 | }; | 39 | }; |
33 | 40 | ||
34 | /* bursts size */ | 41 | /* bursts size */ |
diff --git a/include/linux/edma.h b/include/linux/edma.h new file mode 100644 index 000000000000..a1307e7827e8 --- /dev/null +++ b/include/linux/edma.h | |||
@@ -0,0 +1,29 @@ | |||
1 | /* | ||
2 | * TI EDMA DMA engine driver | ||
3 | * | ||
4 | * Copyright 2012 Texas Instruments | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or | ||
7 | * modify it under the terms of the GNU General Public License as | ||
8 | * published by the Free Software Foundation version 2. | ||
9 | * | ||
10 | * This program is distributed "as is" WITHOUT ANY WARRANTY of any | ||
11 | * kind, whether express or implied; without even the implied warranty | ||
12 | * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
13 | * GNU General Public License for more details. | ||
14 | */ | ||
15 | #ifndef __LINUX_EDMA_H | ||
16 | #define __LINUX_EDMA_H | ||
17 | |||
18 | struct dma_chan; | ||
19 | |||
20 | #if defined(CONFIG_TI_EDMA) || defined(CONFIG_TI_EDMA_MODULE) | ||
21 | bool edma_filter_fn(struct dma_chan *, void *); | ||
22 | #else | ||
23 | static inline bool edma_filter_fn(struct dma_chan *chan, void *param) | ||
24 | { | ||
25 | return false; | ||
26 | } | ||
27 | #endif | ||
28 | |||
29 | #endif | ||
diff --git a/include/linux/platform_data/mmp_dma.h b/include/linux/platform_data/mmp_dma.h new file mode 100644 index 000000000000..2a330ec9e2af --- /dev/null +++ b/include/linux/platform_data/mmp_dma.h | |||
@@ -0,0 +1,19 @@ | |||
1 | /* | ||
2 | * MMP Platform DMA Management | ||
3 | * | ||
4 | * Copyright (c) 2011 Marvell Semiconductors Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | * | ||
10 | */ | ||
11 | |||
12 | #ifndef MMP_DMA_H | ||
13 | #define MMP_DMA_H | ||
14 | |||
15 | struct mmp_dma_platdata { | ||
16 | int dma_channels; | ||
17 | }; | ||
18 | |||
19 | #endif /* MMP_DMA_H */ | ||