summaryrefslogtreecommitdiff
path: root/include/linux/io-pgtable-fast.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/io-pgtable-fast.h')
-rw-r--r--include/linux/io-pgtable-fast.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/include/linux/io-pgtable-fast.h b/include/linux/io-pgtable-fast.h
index ab5a1dc6753e..029e11f9919b 100644
--- a/include/linux/io-pgtable-fast.h
+++ b/include/linux/io-pgtable-fast.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2016, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2016-2017, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -17,7 +17,7 @@
typedef u64 av8l_fast_iopte;
-#define iopte_pmd_offset(pmds, iova) (pmds + (iova >> 12))
+#define iopte_pmd_offset(pmds, base, iova) (pmds + ((iova - base) >> 12))
int av8l_fast_map_public(av8l_fast_iopte *ptep, phys_addr_t paddr, size_t size,
int prot);
@@ -36,7 +36,8 @@ void av8l_fast_unmap_public(av8l_fast_iopte *ptep, size_t size);
*/
#define AV8L_FAST_PTE_UNMAPPED_NEED_TLBI 0xa
-void av8l_fast_clear_stale_ptes(av8l_fast_iopte *puds, bool skip_sync);
+void av8l_fast_clear_stale_ptes(av8l_fast_iopte *puds, u64 base,
+ u64 end, bool skip_sync);
void av8l_register_notify(struct notifier_block *nb);
#else /* !CONFIG_IOMMU_IO_PGTABLE_FAST_PROVE_TLB */
@@ -44,6 +45,8 @@ void av8l_register_notify(struct notifier_block *nb);
#define AV8L_FAST_PTE_UNMAPPED_NEED_TLBI 0
static inline void av8l_fast_clear_stale_ptes(av8l_fast_iopte *puds,
+ u64 base,
+ u64 end,
bool skip_sync)
{
}