Arnd Bergmann <arnd@xxxxxxxx> writes: > On Thu, Mar 1, 2018 at 2:18 PM, Govind Singh <govinds@xxxxxxxxxxxxxxxx> wrote: >>>> The asm/dma-iommu.h header file exsists only on arm32, no other architecture. >>>> I'm not sure about the purpose of the patch to start with: >>>> it's normally up to the platform code to allocate IOMMU domains, >>>> device drivers should only need to manually interact with the >>>> IOMMU layer if they need more than one domain, but this ath10k >>>> patch appears to be using the default domain and should have no >>>> effect as long as the platform code works correctly. >> Thanks Arnd, I have fixed this and migrated to 64bit >> API's(iommu_attach_device/iommu_detach_device/ >> iommu_get_domain_for_dev), will share the next revision. >> I tried using the default domain by adding the stream ID and mask in >> dt and no manual interaction, but it is resulting in TZ error and >> unhandled context fault. >> Seems I need to provide explicit mapping range(aperture_start/ >> aperture_end) as this is only working combination for me.. > > I don't see why you need to do that at all, can you clarify? > > The IOMMU should be set up implicitly for you here based on the iommus > property in DT, with no driver changes at all. This should work on all > architectures/ Maybe Govind is using some out-of-tree tree which is buggy in this regard? -- Kalle Valo