Lines Matching refs:pages
266 #define __TLBI_RANGE_NUM(pages, scale) \ argument
267 (((pages) >> (5 * (scale) + 1)) - 1)
523 u64 start, size_t pages, in __flush_tlb_range_op() argument
527 u64 addr = start, end = start + pages * PAGE_SIZE; in __flush_tlb_range_op()
533 pages = (end - addr) >> PAGE_SHIFT; in __flush_tlb_range_op()
535 if (!system_supports_tlb_range() || pages == 1) in __flush_tlb_range_op()
541 num = __TLBI_RANGE_NUM(pages, scale); in __flush_tlb_range_op()
555 #define __flush_s1_tlb_range_op(op, start, pages, stride, asid, tlb_level) \ argument
556 __flush_tlb_range_op(op, r##op, start, pages, stride, asid, tlb_level, lpa2_is_enabled())
558 #define __flush_s2_tlb_range_op(op, start, pages, stride, tlb_level) \ argument
559 __flush_tlb_range_op(op, r##op, start, pages, stride, 0, tlb_level, kvm_lpa2_is_enabled())
561 static inline bool __flush_tlb_range_limit_excess(unsigned long pages, in __flush_tlb_range_limit_excess() argument
571 return pages > MAX_TLBI_RANGE_PAGES; in __flush_tlb_range_limit_excess()
573 return pages >= (MAX_DVM_OPS * stride) >> PAGE_SHIFT; in __flush_tlb_range_limit_excess()
599 unsigned long asid, pages; in __do_flush_tlb_range() local
601 pages = (end - start) >> PAGE_SHIFT; in __do_flush_tlb_range()
603 if (__flush_tlb_range_limit_excess(pages, stride)) { in __do_flush_tlb_range()
617 __flush_s1_tlb_range_op(vae1is, start, pages, stride, in __do_flush_tlb_range()
621 __flush_s1_tlb_range_op(vale1is, start, pages, stride, in __do_flush_tlb_range()
629 __flush_s1_tlb_range_op(vale1, start, pages, stride, in __do_flush_tlb_range()
686 unsigned long pages; in flush_tlb_kernel_range() local
690 pages = (end - start) >> PAGE_SHIFT; in flush_tlb_kernel_range()
692 if (__flush_tlb_range_limit_excess(pages, stride)) { in flush_tlb_kernel_range()
698 __flush_s1_tlb_range_op(vaale1is, start, pages, stride, 0, in flush_tlb_kernel_range()