On Wed, Nov 18, 2015 at 6:22 PM, Arnd Bergmann <arnd@xxxxxxxx> wrote: > On Wednesday 18 November 2015 18:17:32 Andy Shevchenko wrote: >> On Wed, Nov 18, 2015 at 5:45 PM, Arnd Bergmann <arnd@xxxxxxxx> wrote: >> > On Wednesday 18 November 2015 17:29:19 Andy Shevchenko wrote: > >> >> For me it clearly looks like a platform (HW / SW) configuration issue. >> > >> > I think some people have argued in the past that we should always use >> > the same type for dma_addr_t, resource_size_t and phys_addr_t. That >> > would certainly fix the problem you describe as well. In practice, >> > everyone has that already, and my patch by itself fixes all the >> > cases where the FIFO is at a high address and dma_addr_t is already >> > 64-bit wide. >> >> Let me summarize. >> >> We have to have classification by address space >> 1) physical >> 2) virtual > > That classification is oversimplified, as the DMA address space > is often not the same as physical. > >> dma_addr_t is a physical address wrt DMA mask. >> >> Correct? > > dma_addr_t is how a device sees RAM, it is limited by the DMA mask > that is a subset of the capabilities of the device and the buses > through which it is connected, and is subject to IOMMU translation > and possible platform or bus specific offsets from the physical > memory. I still don't know where you're getting with this. This is off the review already. I'm just structuring knowledge in my head. In principle I agree with your patch. -- With Best Regards, Andy Shevchenko -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html