1/* 2 * Copyright (C) ST-Ericsson SA 2010 3 * 4 * License terms: GNU General Public License (GPL), version 2 5 */ 6 7#include <linux/platform_device.h> 8#include <linux/init.h> 9#include <linux/gpio.h> 10#include <linux/platform_data/dma-ste-dma40.h> 11 12#include <linux/platform_data/asoc-ux500-msp.h> 13 14#include "ste-dma40-db8500.h" 15#include "board-mop500.h" 16 17static struct stedma40_chan_cfg msp0_dma_rx = { 18 .high_priority = true, 19 .dir = DMA_DEV_TO_MEM, 20 .dev_type = DB8500_DMA_DEV31_MSP0_SLIM0_CH0, 21}; 22 23static struct stedma40_chan_cfg msp0_dma_tx = { 24 .high_priority = true, 25 .dir = DMA_MEM_TO_DEV, 26 .dev_type = DB8500_DMA_DEV31_MSP0_SLIM0_CH0, 27}; 28 29struct msp_i2s_platform_data msp0_platform_data = { 30 .id = 0, 31 .msp_i2s_dma_rx = &msp0_dma_rx, 32 .msp_i2s_dma_tx = &msp0_dma_tx, 33}; 34 35static struct stedma40_chan_cfg msp1_dma_rx = { 36 .high_priority = true, 37 .dir = DMA_DEV_TO_MEM, 38 .dev_type = DB8500_DMA_DEV30_MSP3, 39}; 40 41static struct stedma40_chan_cfg msp1_dma_tx = { 42 .high_priority = true, 43 .dir = DMA_MEM_TO_DEV, 44 .dev_type = DB8500_DMA_DEV30_MSP1, 45}; 46 47struct msp_i2s_platform_data msp1_platform_data = { 48 .id = 1, 49 .msp_i2s_dma_rx = NULL, 50 .msp_i2s_dma_tx = &msp1_dma_tx, 51}; 52 53static struct stedma40_chan_cfg msp2_dma_rx = { 54 .high_priority = true, 55 .dir = DMA_DEV_TO_MEM, 56 .dev_type = DB8500_DMA_DEV14_MSP2, 57}; 58 59static struct stedma40_chan_cfg msp2_dma_tx = { 60 .high_priority = true, 61 .dir = DMA_MEM_TO_DEV, 62 .dev_type = DB8500_DMA_DEV14_MSP2, 63 .use_fixed_channel = true, 64 .phy_channel = 1, 65}; 66 67struct msp_i2s_platform_data msp2_platform_data = { 68 .id = 2, 69 .msp_i2s_dma_rx = &msp2_dma_rx, 70 .msp_i2s_dma_tx = &msp2_dma_tx, 71}; 72 73struct msp_i2s_platform_data msp3_platform_data = { 74 .id = 3, 75 .msp_i2s_dma_rx = &msp1_dma_rx, 76 .msp_i2s_dma_tx = NULL, 77}; 78