Lines Matching refs:dma
11 #include <linux/dma-mapping.h>
433 struct msdc_dma dma; /* dma channel */
702 static inline void msdc_dma_setup(struct msdc_host *host, struct msdc_dma *dma,
714 gpd = dma->gpd;
715 bd = dma->bd;
764 upper_32_bits(dma->gpd_addr) & 0xf);
765 writel(lower_32_bits(dma->gpd_addr), host->base + MSDC_DMA_SA);
1068 /* Always use dma mode */
1091 msdc_dma_setup(host, &host->dma, data);
1850 static void msdc_init_gpd_bd(struct msdc_host *host, struct msdc_dma *dma)
1852 struct mt_gpdma_desc *gpd = dma->gpd;
1853 struct mt_bdma_desc *bd = dma->bd;
1859 dma_addr = dma->gpd_addr + sizeof(struct mt_gpdma_desc);
1868 dma_addr = dma->bd_addr;
1869 gpd->ptr = lower_32_bits(dma->bd_addr); /* physical address */
1875 dma_addr = dma->bd_addr + sizeof(*bd) * (i + 1);
2808 host->dma.gpd = dma_alloc_coherent(&pdev->dev,
2810 &host->dma.gpd_addr, GFP_KERNEL);
2811 host->dma.bd = dma_alloc_coherent(&pdev->dev,
2813 &host->dma.bd_addr, GFP_KERNEL);
2814 if (!host->dma.gpd || !host->dma.bd) {
2818 msdc_init_gpd_bd(host, &host->dma);
2874 if (host->dma.gpd)
2877 host->dma.gpd, host->dma.gpd_addr);
2878 if (host->dma.bd)
2881 host->dma.bd, host->dma.bd_addr);
2907 host->dma.gpd, host->dma.gpd_addr);
2909 host->dma.bd, host->dma.bd_addr);