[PATCH] ath10k: Enable IOMMU support for WCN3990 target

govinds at codeaurora.org govinds at codeaurora.org
Thu Mar 8 05:59:31 PST 2018


On 2018-03-08 19:20, Kalle Valo wrote:
> Arnd Bergmann <arnd at arndb.de> writes:
> 
>> On Thu, Mar 1, 2018 at 2:18 PM, Govind Singh 
>> <govinds at qti.qualcomm.com> 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?

Actually there is limitations in using the iova address range for wlan 
IP.
It can allow certain iova range and i was attaching the iommu to specify 
the iova range.
I am exploring if i can use "dma-ranges" in dt to avoid the manual 
interaction apart from
stream ID and mask.

BR,
Govind



More information about the ath10k mailing list