Lines Matching refs:iter
424 struct sgt_dma *iter, in gen8_ppgtt_insert_pte() argument
436 GEM_BUG_ON(sg_dma_len(iter->sg) < I915_GTT_PAGE_SIZE); in gen8_ppgtt_insert_pte()
437 vaddr[gen8_pd_index(idx, 0)] = pte_encode | iter->dma; in gen8_ppgtt_insert_pte()
439 iter->dma += I915_GTT_PAGE_SIZE; in gen8_ppgtt_insert_pte()
440 if (iter->dma >= iter->max) { in gen8_ppgtt_insert_pte()
441 iter->sg = __sg_next(iter->sg); in gen8_ppgtt_insert_pte()
442 if (!iter->sg || sg_dma_len(iter->sg) == 0) { in gen8_ppgtt_insert_pte()
447 iter->dma = sg_dma_address(iter->sg); in gen8_ppgtt_insert_pte()
448 iter->max = iter->dma + sg_dma_len(iter->sg); in gen8_ppgtt_insert_pte()
472 struct sgt_dma *iter, in xehpsdv_ppgtt_insert_huge() argument
477 unsigned int rem = sg_dma_len(iter->sg); in xehpsdv_ppgtt_insert_huge()
497 IS_ALIGNED(iter->dma, I915_GTT_PAGE_SIZE_2M) && in xehpsdv_ppgtt_insert_huge()
509 GEM_BUG_ON(!IS_ALIGNED(iter->dma, in xehpsdv_ppgtt_insert_huge()
532 vaddr[index++] = encode | iter->dma; in xehpsdv_ppgtt_insert_huge()
535 iter->dma += page_size; in xehpsdv_ppgtt_insert_huge()
537 if (iter->dma >= iter->max) { in xehpsdv_ppgtt_insert_huge()
538 iter->sg = __sg_next(iter->sg); in xehpsdv_ppgtt_insert_huge()
539 if (!iter->sg) in xehpsdv_ppgtt_insert_huge()
542 rem = sg_dma_len(iter->sg); in xehpsdv_ppgtt_insert_huge()
546 iter->dma = sg_dma_address(iter->sg); in xehpsdv_ppgtt_insert_huge()
547 iter->max = iter->dma + rem; in xehpsdv_ppgtt_insert_huge()
549 if (unlikely(!IS_ALIGNED(iter->dma, page_size))) in xehpsdv_ppgtt_insert_huge()
555 } while (iter->sg && sg_dma_len(iter->sg)); in xehpsdv_ppgtt_insert_huge()
560 struct sgt_dma *iter, in gen8_ppgtt_insert_huge() argument
565 unsigned int rem = sg_dma_len(iter->sg); in gen8_ppgtt_insert_huge()
582 IS_ALIGNED(iter->dma, I915_GTT_PAGE_SIZE_2M) && in gen8_ppgtt_insert_huge()
599 IS_ALIGNED(iter->dma, I915_GTT_PAGE_SIZE_64K) && in gen8_ppgtt_insert_huge()
608 GEM_BUG_ON(sg_dma_len(iter->sg) < page_size); in gen8_ppgtt_insert_huge()
609 vaddr[index++] = encode | iter->dma; in gen8_ppgtt_insert_huge()
612 iter->dma += page_size; in gen8_ppgtt_insert_huge()
614 if (iter->dma >= iter->max) { in gen8_ppgtt_insert_huge()
615 iter->sg = __sg_next(iter->sg); in gen8_ppgtt_insert_huge()
616 if (!iter->sg) in gen8_ppgtt_insert_huge()
619 rem = sg_dma_len(iter->sg); in gen8_ppgtt_insert_huge()
623 iter->dma = sg_dma_address(iter->sg); in gen8_ppgtt_insert_huge()
624 iter->max = iter->dma + rem; in gen8_ppgtt_insert_huge()
627 !(IS_ALIGNED(iter->dma, I915_GTT_PAGE_SIZE_64K) && in gen8_ppgtt_insert_huge()
632 if (unlikely(!IS_ALIGNED(iter->dma, page_size))) in gen8_ppgtt_insert_huge()
648 !iter->sg && IS_ALIGNED(vma_res->start + in gen8_ppgtt_insert_huge()
679 } while (iter->sg && sg_dma_len(iter->sg)); in gen8_ppgtt_insert_huge()
688 struct sgt_dma iter = sgt_dma(vma_res); in gen8_ppgtt_insert() local
692 xehpsdv_ppgtt_insert_huge(vm, vma_res, &iter, cache_level, flags); in gen8_ppgtt_insert()
694 gen8_ppgtt_insert_huge(vm, vma_res, &iter, cache_level, flags); in gen8_ppgtt_insert()
702 idx = gen8_ppgtt_insert_pte(ppgtt, pdp, &iter, idx, in gen8_ppgtt_insert()