From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Dooks Date: Thu, 20 Mar 2014 16:12:43 +0000 Subject: Re: DMABOUNCE in pci-rcar Message-Id: <532B137B.7010900@codethink.co.uk> List-Id: References: <201402241200.21944.arnd@arndb.de> <5165962.7bqj51B15Z@wuerfel> <532B0384.1000400@codethink.co.uk> <5527822.QYtFYiIpiW@wuerfel> In-Reply-To: <5527822.QYtFYiIpiW@wuerfel> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-arm-kernel@lists.infradead.org On 20/03/14 17:09, Arnd Bergmann wrote: > On Thursday 20 March 2014 16:04:36 Ben Dooks wrote: >> On 26/02/14 20:57, Arnd Bergmann wrote: >>> On Wednesday 26 February 2014 12:48:17 Bjorn Helgaas wrote: >>>> On Mon, Feb 24, 2014 at 4:00 AM, Arnd Bergmann wrote: >>>>> Hi Magnus, >>>>> >>>>> I noticed during randconfig testing that you enabled DMABOUNCE for the >>>>> pci-rcar-gen2 driver as posted in this patch https://lkml.org/lkml/2014/2/5/30 >>>>> >>>>> I didn't see the original post unfortunately, but I fear we have to >>>>> revert it and come up with a better solution, ... >>>> >>>> Sounds like I should drop the following patches from my pci/host-rcar >>>> branch for now? >>>> >>>> PCI: rcar: Add DMABOUNCE support >>>> PCI: rcar: Enable BOUNCE in case of HIGHMEM >>>> PCI: rcar: Make the Kconfig dependencies more generic >>> >>> Sounds good to me. The last patch is actually fine, but you'll have to >>> fix the context to apply it without the other two. >> >> As a note, if we now boot a Lager with DT on 3.14-rc3 series the USB >> controllers no longer work with full 2GiB RAM enabled in the device >> tree. > > Did it work before these patches got applied initially? It did, but I cannot remember if we where limiting DRAM to 1GiB or not. >> Could we work around this by having 1GiB of memory defined in the >> 32bit memory and then add the rest of the 3GiB from the >32bit >> area via LPAE? Will the kernel ever try to allocate DMA memory from >> anything >32bit? > > You can solve the case for dma_alloc_coherent() this way, or by > setting the mask correctly. It won't help you for dma_map_* though, > which still requires someone to add support for swiotlb or using > an IOMMU if present. We do not have an IOMMU present at the moment. Not sure how to go about setting a mask on a pci-probed device. -- Ben Dooks http://www.codethink.co.uk/ Senior Engineer Codethink - Providing Genius