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 c975caf75385d2e634cdb151dae416e2487533a0..58f41107e4ae05327330710ce11c15979d3e114f 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);