Merge branch 'for-v3.12' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping
[cascardo/linux.git] / arch / arm / mach-ux500 / board-mop500-sdi.c
index 0ef3877..b3e61a3 100644 (file)
 #ifdef CONFIG_STE_DMA40
 struct stedma40_chan_cfg mop500_sdi0_dma_cfg_rx = {
        .mode = STEDMA40_MODE_LOGICAL,
-       .dir = STEDMA40_PERIPH_TO_MEM,
-       .src_dev_type = DB8500_DMA_DEV29_SD_MM0_RX,
-       .dst_dev_type = STEDMA40_DEV_DST_MEMORY,
-       .src_info.data_width = STEDMA40_WORD_WIDTH,
-       .dst_info.data_width = STEDMA40_WORD_WIDTH,
+       .dir = DMA_DEV_TO_MEM,
+       .dev_type = DB8500_DMA_DEV29_SD_MM0,
 };
 
 static struct stedma40_chan_cfg mop500_sdi0_dma_cfg_tx = {
        .mode = STEDMA40_MODE_LOGICAL,
-       .dir = STEDMA40_MEM_TO_PERIPH,
-       .src_dev_type = STEDMA40_DEV_SRC_MEMORY,
-       .dst_dev_type = DB8500_DMA_DEV29_SD_MM0_TX,
-       .src_info.data_width = STEDMA40_WORD_WIDTH,
-       .dst_info.data_width = STEDMA40_WORD_WIDTH,
+       .dir = DMA_MEM_TO_DEV,
+       .dev_type = DB8500_DMA_DEV29_SD_MM0,
 };
 #endif
 
 struct mmci_platform_data mop500_sdi0_data = {
-       .ocr_mask       = MMC_VDD_29_30,
-       .f_max          = 50000000,
+       .f_max          = 100000000,
        .capabilities   = MMC_CAP_4_BIT_DATA |
                                MMC_CAP_SD_HIGHSPEED |
-                               MMC_CAP_MMC_HIGHSPEED,
+                               MMC_CAP_MMC_HIGHSPEED |
+                               MMC_CAP_ERASE |
+                               MMC_CAP_UHS_SDR12 |
+                               MMC_CAP_UHS_SDR25,
        .gpio_wp        = -1,
        .sigdir         = MCI_ST_FBCLKEN |
                                MCI_ST_CMDDIREN |
@@ -87,27 +83,22 @@ void mop500_sdi_tc35892_init(struct device *parent)
 #ifdef CONFIG_STE_DMA40
 static struct stedma40_chan_cfg sdi1_dma_cfg_rx = {
        .mode = STEDMA40_MODE_LOGICAL,
-       .dir = STEDMA40_PERIPH_TO_MEM,
-       .src_dev_type = DB8500_DMA_DEV32_SD_MM1_RX,
-       .dst_dev_type = STEDMA40_DEV_DST_MEMORY,
-       .src_info.data_width = STEDMA40_WORD_WIDTH,
-       .dst_info.data_width = STEDMA40_WORD_WIDTH,
+       .dir = DMA_DEV_TO_MEM,
+       .dev_type = DB8500_DMA_DEV32_SD_MM1,
 };
 
 static struct stedma40_chan_cfg sdi1_dma_cfg_tx = {
        .mode = STEDMA40_MODE_LOGICAL,
-       .dir = STEDMA40_MEM_TO_PERIPH,
-       .src_dev_type = STEDMA40_DEV_SRC_MEMORY,
-       .dst_dev_type = DB8500_DMA_DEV32_SD_MM1_TX,
-       .src_info.data_width = STEDMA40_WORD_WIDTH,
-       .dst_info.data_width = STEDMA40_WORD_WIDTH,
+       .dir = DMA_MEM_TO_DEV,
+       .dev_type = DB8500_DMA_DEV32_SD_MM1,
 };
 #endif
 
 struct mmci_platform_data mop500_sdi1_data = {
        .ocr_mask       = MMC_VDD_29_30,
-       .f_max          = 50000000,
-       .capabilities   = MMC_CAP_4_BIT_DATA,
+       .f_max          = 100000000,
+       .capabilities   = MMC_CAP_4_BIT_DATA |
+                               MMC_CAP_NONREMOVABLE,
        .gpio_cd        = -1,
        .gpio_wp        = -1,
 #ifdef CONFIG_STE_DMA40
@@ -124,28 +115,26 @@ struct mmci_platform_data mop500_sdi1_data = {
 #ifdef CONFIG_STE_DMA40
 struct stedma40_chan_cfg mop500_sdi2_dma_cfg_rx = {
        .mode = STEDMA40_MODE_LOGICAL,
-       .dir = STEDMA40_PERIPH_TO_MEM,
-       .src_dev_type =  DB8500_DMA_DEV28_SD_MM2_RX,
-       .dst_dev_type = STEDMA40_DEV_DST_MEMORY,
-       .src_info.data_width = STEDMA40_WORD_WIDTH,
-       .dst_info.data_width = STEDMA40_WORD_WIDTH,
+       .dir = DMA_DEV_TO_MEM,
+       .dev_type =  DB8500_DMA_DEV28_SD_MM2,
 };
 
 static struct stedma40_chan_cfg mop500_sdi2_dma_cfg_tx = {
        .mode = STEDMA40_MODE_LOGICAL,
-       .dir = STEDMA40_MEM_TO_PERIPH,
-       .src_dev_type = STEDMA40_DEV_SRC_MEMORY,
-       .dst_dev_type = DB8500_DMA_DEV28_SD_MM2_TX,
-       .src_info.data_width = STEDMA40_WORD_WIDTH,
-       .dst_info.data_width = STEDMA40_WORD_WIDTH,
+       .dir = DMA_MEM_TO_DEV,
+       .dev_type = DB8500_DMA_DEV28_SD_MM2,
 };
 #endif
 
 struct mmci_platform_data mop500_sdi2_data = {
        .ocr_mask       = MMC_VDD_165_195,
-       .f_max          = 50000000,
-       .capabilities   = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA |
-                         MMC_CAP_MMC_HIGHSPEED,
+       .f_max          = 100000000,
+       .capabilities   = MMC_CAP_4_BIT_DATA |
+                               MMC_CAP_8_BIT_DATA |
+                               MMC_CAP_NONREMOVABLE |
+                               MMC_CAP_MMC_HIGHSPEED |
+                               MMC_CAP_ERASE |
+                               MMC_CAP_CMD23,
        .gpio_cd        = -1,
        .gpio_wp        = -1,
 #ifdef CONFIG_STE_DMA40
@@ -162,28 +151,25 @@ struct mmci_platform_data mop500_sdi2_data = {
 #ifdef CONFIG_STE_DMA40
 struct stedma40_chan_cfg mop500_sdi4_dma_cfg_rx = {
        .mode = STEDMA40_MODE_LOGICAL,
-       .dir = STEDMA40_PERIPH_TO_MEM,
-       .src_dev_type =  DB8500_DMA_DEV42_SD_MM4_RX,
-       .dst_dev_type = STEDMA40_DEV_DST_MEMORY,
-       .src_info.data_width = STEDMA40_WORD_WIDTH,
-       .dst_info.data_width = STEDMA40_WORD_WIDTH,
+       .dir = DMA_DEV_TO_MEM,
+       .dev_type =  DB8500_DMA_DEV42_SD_MM4,
 };
 
 static struct stedma40_chan_cfg mop500_sdi4_dma_cfg_tx = {
        .mode = STEDMA40_MODE_LOGICAL,
-       .dir = STEDMA40_MEM_TO_PERIPH,
-       .src_dev_type = STEDMA40_DEV_SRC_MEMORY,
-       .dst_dev_type = DB8500_DMA_DEV42_SD_MM4_TX,
-       .src_info.data_width = STEDMA40_WORD_WIDTH,
-       .dst_info.data_width = STEDMA40_WORD_WIDTH,
+       .dir = DMA_MEM_TO_DEV,
+       .dev_type = DB8500_DMA_DEV42_SD_MM4,
 };
 #endif
 
 struct mmci_platform_data mop500_sdi4_data = {
-       .ocr_mask       = MMC_VDD_29_30,
-       .f_max          = 50000000,
-       .capabilities   = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA |
-                         MMC_CAP_MMC_HIGHSPEED,
+       .f_max          = 100000000,
+       .capabilities   = MMC_CAP_4_BIT_DATA |
+                               MMC_CAP_8_BIT_DATA |
+                               MMC_CAP_NONREMOVABLE |
+                               MMC_CAP_MMC_HIGHSPEED |
+                               MMC_CAP_ERASE |
+                               MMC_CAP_CMD23,
        .gpio_cd        = -1,
        .gpio_wp        = -1,
 #ifdef CONFIG_STE_DMA40