Lines Matching refs:level
12 * than by name. 0 is the lowest level, and page-tables with level 0 can
14 * can. The user of the utilities determines the highest level.
17 * Each struct xe_ptw, regardless of level is referred to as a page table, and
27 static u64 xe_pt_addr_end(u64 addr, u64 end, unsigned int level,
30 u64 size = 1ull << walk->shifts[level];
37 unsigned int level, const struct xe_pt_walk *walk)
43 unsigned int shift = walk->shifts[level];
62 * @level: The root page table level.
73 int xe_pt_walk_range(struct xe_ptw *parent, unsigned int level,
76 pgoff_t offset = xe_pt_offset(addr, level, walk);
86 next = xe_pt_addr_end(addr, end, level, walk);
87 if (walk->shared_pt_mode && xe_pt_covers(addr, next, level,
93 err = ops->pt_entry(parent, offset, level, addr, next,
102 if (likely(!level || !child || action == ACTION_CONTINUE))
105 err = xe_pt_walk_range(child, level - 1, addr, next, walk);
108 err = ops->pt_post_descend(parent, offset, level, addr,
113 } while (xe_pt_next(&offset, &addr, next, end, level, walk));
121 * @level: Level of the root.
140 int xe_pt_walk_shared(struct xe_ptw *parent, unsigned int level,
149 err = walk->ops->pt_entry(parent, 0, level + 1, addr, end,
155 err = xe_pt_walk_range(parent, level, addr, end, walk);
157 err = ops->pt_post_descend(parent, 0, level + 1, addr, end,