Hi Catalin, On Tue, Jun 18 2024, Catalin Marinas wrote: > On Tue, Apr 09, 2024 at 09:17:55AM +0300, Baruch Siach wrote: >> of_dma_get_max_cpu_address() returns the highest CPU address that >> devices can use for DMA. The implicit assumption is that all CPU >> addresses below that limit are suitable for DMA. However the >> 'dma-ranges' property this code uses also encodes a lower limit for DMA >> that is potentially non zero. >> >> Rename to of_dma_get_cpu_limits(), and extend to retrieve also the lower >> limit for the same 'dma-ranges' property describing the high limit. > > I don't understand the reason for the lower limit. The way the Linux > zones work is that ZONE_DMA always starts from the start of the RAM. It > doesn't matter whether it's 0 or not, you'd not allocate below the start > of RAM anyway. If you have a device that cannot use the bottom of the > RAM, it is pretty broken and not supported by Linux. I won't argue with that assertion. My target system RAM happens to start at that the lower end of devices DMA zone, so I'm fine with skipping this patch. Just curious. What is the inherent limitation that prevents Linux from supporting DMA zone with lower limit above RAM start? Thanks, baruch -- ~. .~ Tk Open Systems =}------------------------------------------------ooO--U--Ooo------------{= - baruch@xxxxxxxxxx - tel: +972.52.368.4656, http://www.tkos.co.il -