Hi Shimoda-san, Interesting series! > - .dma_buswidth = DMA_SLAVE_BUSWIDTH_4_BYTES, > + .dma_buswidth = DMA_SLAVE_BUSWIDTH_32_BYTES, Two very high level questions: 1) can't we set dma_priv->dma_buswidth at runtime when we know what the card is capable of? Either DMA_SLAVE_BUSWIDTH_32_BYTES or DMA_SLAVE_BUSWIDTH_4_BYTES? Then we don't need to fallback to PIO. AFAIS, we only Gen2 sets .dma_buswidth in of_data, so we could even remove it from of_data entirely? 2) Just by grepping in mmc/hosts, I see that no driver uses DMA_SLAVE_BUSWIDTH_32_BYTES. Do you have an idea why? Because it is the convenient setting which works for all cards? Thanks and kind regards, Wolfram