2012-04-20 11:32:59 +02:00
/*
* Copyright ( C ) ST - Ericsson SA 2010
*
* License terms : GNU General Public License ( GPL ) , version 2
*/
# include <linux/platform_device.h>
# include <linux/init.h>
# include <linux/gpio.h>
2012-10-18 14:20:16 +02:00
# include <linux/platform_data/dma-ste-dma40.h>
2012-04-20 11:32:59 +02:00
2013-03-21 22:51:06 +01:00
# include <linux/platform_data/asoc-ux500-msp.h>
2012-04-20 11:32:59 +02:00
2012-05-07 10:34:16 +02:00
# include "ste-dma40-db8500.h"
2012-04-20 11:32:59 +02:00
# include "board-mop500.h"
static struct stedma40_chan_cfg msp0_dma_rx = {
. high_priority = true ,
2013-05-15 10:51:53 +01:00
. dir = DMA_DEV_TO_MEM ,
2013-05-03 15:31:56 +01:00
. dev_type = DB8500_DMA_DEV31_MSP0_SLIM0_CH0 ,
2012-04-20 11:32:59 +02:00
} ;
static struct stedma40_chan_cfg msp0_dma_tx = {
. high_priority = true ,
2013-05-15 10:51:53 +01:00
. dir = DMA_MEM_TO_DEV ,
2013-05-03 15:31:56 +01:00
. dev_type = DB8500_DMA_DEV31_MSP0_SLIM0_CH0 ,
2012-04-20 11:32:59 +02:00
} ;
2012-07-25 13:58:36 +01:00
struct msp_i2s_platform_data msp0_platform_data = {
2013-12-19 15:54:58 +00:00
. id = 0 ,
2012-04-20 11:32:59 +02:00
. msp_i2s_dma_rx = & msp0_dma_rx ,
. msp_i2s_dma_tx = & msp0_dma_tx ,
} ;
static struct stedma40_chan_cfg msp1_dma_rx = {
. high_priority = true ,
2013-05-15 10:51:53 +01:00
. dir = DMA_DEV_TO_MEM ,
2013-05-03 15:31:56 +01:00
. dev_type = DB8500_DMA_DEV30_MSP3 ,
2012-04-20 11:32:59 +02:00
} ;
static struct stedma40_chan_cfg msp1_dma_tx = {
. high_priority = true ,
2013-05-15 10:51:53 +01:00
. dir = DMA_MEM_TO_DEV ,
2013-05-03 15:31:56 +01:00
. dev_type = DB8500_DMA_DEV30_MSP1 ,
2012-04-20 11:32:59 +02:00
} ;
2012-07-25 13:58:36 +01:00
struct msp_i2s_platform_data msp1_platform_data = {
2013-12-19 15:54:58 +00:00
. id = 1 ,
2012-04-20 11:32:59 +02:00
. msp_i2s_dma_rx = NULL ,
. msp_i2s_dma_tx = & msp1_dma_tx ,
} ;
static struct stedma40_chan_cfg msp2_dma_rx = {
. high_priority = true ,
2013-05-15 10:51:53 +01:00
. dir = DMA_DEV_TO_MEM ,
2013-05-03 15:31:56 +01:00
. dev_type = DB8500_DMA_DEV14_MSP2 ,
2012-04-20 11:32:59 +02:00
} ;
static struct stedma40_chan_cfg msp2_dma_tx = {
. high_priority = true ,
2013-05-15 10:51:53 +01:00
. dir = DMA_MEM_TO_DEV ,
2013-05-03 15:31:56 +01:00
. dev_type = DB8500_DMA_DEV14_MSP2 ,
2012-04-20 11:32:59 +02:00
. use_fixed_channel = true ,
. phy_channel = 1 ,
} ;
2012-07-25 13:58:36 +01:00
struct msp_i2s_platform_data msp2_platform_data = {
2013-12-19 15:54:58 +00:00
. id = 2 ,
2012-04-20 11:32:59 +02:00
. msp_i2s_dma_rx = & msp2_dma_rx ,
. msp_i2s_dma_tx = & msp2_dma_tx ,
} ;
2012-07-25 13:58:36 +01:00
struct msp_i2s_platform_data msp3_platform_data = {
2013-12-19 15:54:58 +00:00
. id = 3 ,
2012-04-20 11:32:59 +02:00
. msp_i2s_dma_rx = & msp1_dma_rx ,
. msp_i2s_dma_tx = NULL ,
} ;