>> 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.. BR, Govind -----Original Message----- From: ath10k [mailto:ath10k-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Arnd Bergmann Sent: Thursday, March 1, 2018 3:40 PM To: Kalle Valo <kvalo@xxxxxxxxxxxxxx> Cc: Govind Singh <govinds@xxxxxxxxxxxxxx>; linux-wireless <linux-wireless@xxxxxxxxxxxxxxx>; ath10k@xxxxxxxxxxxxxxxxxxx Subject: Re: [PATCH] ath10k: Enable IOMMU support for WCN3990 target On Thu, Mar 1, 2018 at 11:01 AM, Kalle Valo <kvalo@xxxxxxxxxxxxxx> wrote: > Govind Singh <govinds@xxxxxxxxxxxxxx> writes: > >> When an IOMMU device is available on the platform bus, allocate an >> IOMMU domain and attach the wlan target to it. >> WCN3990 target can then attach an DMA I/O virtual address space to >> scan out of bound transactions. >> >> Signed-off-by: Govind Singh <govinds@xxxxxxxxxxxxxx> >> --- >> drivers/net/wireless/ath/ath10k/snoc.c | 100 ++++++++++++++++++++++++++++++++- >> drivers/net/wireless/ath/ath10k/snoc.h | 3 + >> 2 files changed, 101 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/net/wireless/ath/ath10k/snoc.c >> b/drivers/net/wireless/ath/ath10k/snoc.c >> index cd21b25..502263d 100644 >> --- a/drivers/net/wireless/ath/ath10k/snoc.c >> +++ b/drivers/net/wireless/ath/ath10k/snoc.c >> @@ -26,6 +26,10 @@ >> #include <linux/platform_device.h> >> #include <linux/regulator/consumer.h> #include <linux/clk.h> >> +#include <asm/dma-iommu.h> >> +#include <linux/iommu.h> >> +#include <linux/dma-mapping.h> > > Kbuild bot reported a problem with arm64 but strangely I cannot find > the full report. Anyway, this was the warning: > > drivers/net/wireless/ath/ath10k/snoc.c:29:10: fatal error: > asm/dma-iommu.h: No such file or directory > > Any ideas? Adding also Arnd, the grand master of compilation problems > :) > > Full patch here: > > https://patchwork.kernel.org/patch/10220719/ > 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. Arnd _______________________________________________ ath10k mailing list ath10k@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/ath10k