|
@@ -667,7 +667,7 @@ static size_t iopgtable_clear_entry_core(struct iommu *obj, u32 da)
|
|
if ((*iopgd & IOPGD_SUPER) == IOPGD_SUPER) {
|
|
if ((*iopgd & IOPGD_SUPER) == IOPGD_SUPER) {
|
|
nent *= 16;
|
|
nent *= 16;
|
|
/* rewind to the 1st entry */
|
|
/* rewind to the 1st entry */
|
|
- iopgd = (u32 *)((u32)iopgd & IOSUPER_MASK);
|
|
|
|
|
|
+ iopgd = iopgd_offset(obj, (da & IOSUPER_MASK));
|
|
}
|
|
}
|
|
bytes *= nent;
|
|
bytes *= nent;
|
|
}
|
|
}
|