diff options
| author | Olof Johansson <olof@lixom.net> | 2013-06-14 19:53:54 -0400 |
|---|---|---|
| committer | Olof Johansson <olof@lixom.net> | 2013-06-14 19:53:54 -0400 |
| commit | 2c3165ebb641e0ff3faf1c87ed1c8fbd85871da0 (patch) | |
| tree | ecf0bef4ee0b56029d0f08aed941aca78da99424 /include/linux | |
| parent | 0d86331b4cc9b0c52d41bbe78cb4b75f40b7381c (diff) | |
| parent | 499c2bc3cc89dcbbf08aa526cd4a984b92a4d2a8 (diff) | |
Merge tag 'ux500-dma40-for-arm-soc-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson into next/drivers
From Linus Walleij:
Second set of DMA40 changes: refactorings and device tree
support for the DMA40. Now with MUSB and some platform
data removal.
* tag 'ux500-dma40-for-arm-soc-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson:
dmaengine: ste_dma40: Fetch disabled channels from DT
dmaengine: ste_dma40: Fetch the number of physical channels from DT
ARM: ux500: Stop passing DMA platform data though AUXDATA
dmaengine: ste_dma40: Allow memcpy channels to be configured from DT
dmaengine: ste_dma40_ll: Replace meaningless register set with comment
dmaengine: ste_dma40: Convert data_width from register bit format to value
dmaengine: ste_dma40_ll: Use the BIT macro to replace ugly '(1 << x)'s
ARM: ux500: Remove recently unused stedma40_xfer_dir enums
dmaengine: ste_dma40: Replace ST-E's home-brew DMA direction defs with generic ones
ARM: ux500: Replace ST-E's home-brew DMA direction definition with the generic one
dmaengine: ste_dma40: Use the BIT macro to replace ugly '(1 << x)'s
ARM: ux500: Remove empty function u8500_of_init_devices()
ARM: ux500: Remove ux500-musb platform registation when booting with DT
usb: musb: ux500: add device tree probing support
usb: musb: ux500: attempt to find channels by name before using pdata
usb: musb: ux500: harden checks for platform data
usb: musb: ux500: take the dma_mask from coherent_dma_mask
usb: musb: ux500: move the MUSB HDRC configuration into the driver
usb: musb: ux500: move channel number knowledge into the driver
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/platform_data/dma-ste-dma40.h | 21 | ||||
| -rw-r--r-- | include/linux/platform_data/usb-musb-ux500.h | 5 |
2 files changed, 5 insertions, 21 deletions
diff --git a/include/linux/platform_data/dma-ste-dma40.h b/include/linux/platform_data/dma-ste-dma40.h index 288dc2420ee6..1bb9b1852256 100644 --- a/include/linux/platform_data/dma-ste-dma40.h +++ b/include/linux/platform_data/dma-ste-dma40.h | |||
| @@ -70,21 +70,6 @@ enum stedma40_flow_ctrl { | |||
| 70 | STEDMA40_FLOW_CTRL, | 70 | STEDMA40_FLOW_CTRL, |
| 71 | }; | 71 | }; |
| 72 | 72 | ||
| 73 | enum stedma40_periph_data_width { | ||
| 74 | STEDMA40_BYTE_WIDTH = STEDMA40_ESIZE_8_BIT, | ||
| 75 | STEDMA40_HALFWORD_WIDTH = STEDMA40_ESIZE_16_BIT, | ||
| 76 | STEDMA40_WORD_WIDTH = STEDMA40_ESIZE_32_BIT, | ||
| 77 | STEDMA40_DOUBLEWORD_WIDTH = STEDMA40_ESIZE_64_BIT | ||
| 78 | }; | ||
| 79 | |||
| 80 | enum stedma40_xfer_dir { | ||
| 81 | STEDMA40_MEM_TO_MEM = 1, | ||
| 82 | STEDMA40_MEM_TO_PERIPH, | ||
| 83 | STEDMA40_PERIPH_TO_MEM, | ||
| 84 | STEDMA40_PERIPH_TO_PERIPH | ||
| 85 | }; | ||
| 86 | |||
| 87 | |||
| 88 | /** | 73 | /** |
| 89 | * struct stedma40_half_channel_info - dst/src channel configuration | 74 | * struct stedma40_half_channel_info - dst/src channel configuration |
| 90 | * | 75 | * |
| @@ -95,7 +80,7 @@ enum stedma40_xfer_dir { | |||
| 95 | */ | 80 | */ |
| 96 | struct stedma40_half_channel_info { | 81 | struct stedma40_half_channel_info { |
| 97 | bool big_endian; | 82 | bool big_endian; |
| 98 | enum stedma40_periph_data_width data_width; | 83 | enum dma_slave_buswidth data_width; |
| 99 | int psize; | 84 | int psize; |
| 100 | enum stedma40_flow_ctrl flow_ctrl; | 85 | enum stedma40_flow_ctrl flow_ctrl; |
| 101 | }; | 86 | }; |
| @@ -120,7 +105,7 @@ struct stedma40_half_channel_info { | |||
| 120 | * | 105 | * |
| 121 | */ | 106 | */ |
| 122 | struct stedma40_chan_cfg { | 107 | struct stedma40_chan_cfg { |
| 123 | enum stedma40_xfer_dir dir; | 108 | enum dma_transfer_direction dir; |
| 124 | bool high_priority; | 109 | bool high_priority; |
| 125 | bool realtime; | 110 | bool realtime; |
| 126 | enum stedma40_mode mode; | 111 | enum stedma40_mode mode; |
| @@ -147,6 +132,7 @@ struct stedma40_chan_cfg { | |||
| 147 | * @num_of_soft_lli_chans: The number of channels that needs to be configured | 132 | * @num_of_soft_lli_chans: The number of channels that needs to be configured |
| 148 | * to use SoftLLI. | 133 | * to use SoftLLI. |
| 149 | * @use_esram_lcla: flag for mapping the lcla into esram region | 134 | * @use_esram_lcla: flag for mapping the lcla into esram region |
| 135 | * @num_of_memcpy_chans: The number of channels reserved for memcpy. | ||
| 150 | * @num_of_phy_chans: The number of physical channels implemented in HW. | 136 | * @num_of_phy_chans: The number of physical channels implemented in HW. |
| 151 | * 0 means reading the number of channels from DMA HW but this is only valid | 137 | * 0 means reading the number of channels from DMA HW but this is only valid |
| 152 | * for 'multiple of 4' channels, like 8. | 138 | * for 'multiple of 4' channels, like 8. |
| @@ -156,6 +142,7 @@ struct stedma40_platform_data { | |||
| 156 | int *soft_lli_chans; | 142 | int *soft_lli_chans; |
| 157 | int num_of_soft_lli_chans; | 143 | int num_of_soft_lli_chans; |
| 158 | bool use_esram_lcla; | 144 | bool use_esram_lcla; |
| 145 | int num_of_memcpy_chans; | ||
| 159 | int num_of_phy_chans; | 146 | int num_of_phy_chans; |
| 160 | }; | 147 | }; |
| 161 | 148 | ||
diff --git a/include/linux/platform_data/usb-musb-ux500.h b/include/linux/platform_data/usb-musb-ux500.h index 4c1cc50a595a..dd9c83ac7de0 100644 --- a/include/linux/platform_data/usb-musb-ux500.h +++ b/include/linux/platform_data/usb-musb-ux500.h | |||
| @@ -9,14 +9,11 @@ | |||
| 9 | 9 | ||
| 10 | #include <linux/dmaengine.h> | 10 | #include <linux/dmaengine.h> |
| 11 | 11 | ||
| 12 | #define UX500_MUSB_DMA_NUM_RX_CHANNELS 8 | 12 | #define UX500_MUSB_DMA_NUM_RX_TX_CHANNELS 8 |
| 13 | #define UX500_MUSB_DMA_NUM_TX_CHANNELS 8 | ||
| 14 | 13 | ||
| 15 | struct ux500_musb_board_data { | 14 | struct ux500_musb_board_data { |
| 16 | void **dma_rx_param_array; | 15 | void **dma_rx_param_array; |
| 17 | void **dma_tx_param_array; | 16 | void **dma_tx_param_array; |
| 18 | u32 num_rx_channels; | ||
| 19 | u32 num_tx_channels; | ||
| 20 | bool (*dma_filter)(struct dma_chan *chan, void *filter_param); | 17 | bool (*dma_filter)(struct dma_chan *chan, void *filter_param); |
| 21 | }; | 18 | }; |
| 22 | 19 | ||
