Subject: RFC: extend IOMMU attributes

From: [email-masked] (joro at 8bytes.org)
Date: Thu, 25 Feb 2016 15:38:55 +0100

On Thu, Feb 18, 2016 at 04:16:26PM +0000, Stuart Yoder wrote:
>  #define IOMMU_READ            (1 << 0)
>  #define IOMMU_WRITE           (1 << 1)
> -#define IOMMU_CACHE           (1 << 2) /* DMA cache coherency */
> +#define IOMMU_CACHE_COHERENT  (1 << 2) /* cacheable and coherent */
>  #define IOMMU_NOEXEC          (1 << 3)
>  #define IOMMU_MMIO            (1 << 4) /* e.g. things like MSI doorbells */
> +#define IOMMU_CACHEABLE       (1 << 5) /* cacheable, not coherent */
> +#define IOMMU_CACHE_ALLOCATE  (1 << 6) /* hint to allocate in the cache */

Hmm, this might be a valid use-case to introduce the
map_attr()/unmap_attr() calls to the IOMMU-API. I have been resistant to
these functions until now because the proposed use-cases were not
convincing, but for hardware-specific map-attributes like this one it
could make sense.

	Joerg