iommu: add iommu_device_max_index IOMMU helper function
authorFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Fri, 12 Sep 2008 10:42:33 +0000 (19:42 +0900)
committerIngo Molnar <mingo@elte.hu>
Sun, 14 Sep 2008 14:42:36 +0000 (16:42 +0200)
This function helps IOMMUs to know the highest address that a device
can access to.

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
include/linux/iommu-helper.h

index c975caf..58f4110 100644 (file)
@@ -1,3 +1,13 @@
+static inline unsigned long iommu_device_max_index(unsigned long size,
+                                                  unsigned long offset,
+                                                  u64 dma_mask)
+{
+       if (size + offset > dma_mask)
+               return dma_mask - offset + 1;
+       else
+               return size;
+}
+
 extern int iommu_is_span_boundary(unsigned int index, unsigned int nr,
                                  unsigned long shift,
                                  unsigned long boundary_size);