[PATCH 0/3] Apple M1 DART IOMMU driver
Arnd Bergmann
arnd at kernel.org
Thu Mar 25 21:41:09 GMT 2021
On Thu, Mar 25, 2021 at 8:53 AM Sven Peter <sven at svenpeter.dev> wrote:
> On Tue, Mar 23, 2021, at 21:53, Rob Herring wrote:
>
> I'm probably just confused or maybe the documentation is outdated but I don't
> see how I could specify "this device can only use DMA addresses from
> 0x00100000...0x3ff00000 but can map these via the iommu to any physical
> address" using 'dma-ranges'.
It sounds like this is a holdover from the original powerpc iommu, which also
had a limited set of virtual addresses in the iommu.
I would think it's sufficient to describe it in the iommu itself,
since the limitation
is more "addresses coming into the iommu must be this range" than "this device
must use that address range for talking to the iommu".
If the addresses are allocated by the iommu driver, and each iommu only has
one DMA master attached to it, having a simple range property in the iommu
node should do the trick here. If there might be multiple devices on the same
iommu but with different address ranges (which I don't think is the case), then
it could be part of the reference to the iommu.
Arnd
More information about the linux-arm-kernel
mailing list