Lines Matching full:se

1136 static inline void ppgtt_generate_shadow_entry(struct intel_gvt_gtt_entry *se,  in ppgtt_generate_shadow_entry()  argument
1141 se->type = ge->type; in ppgtt_generate_shadow_entry()
1142 se->val64 = ge->val64; in ppgtt_generate_shadow_entry()
1145 if (se->type == GTT_TYPE_PPGTT_PDE_ENTRY) in ppgtt_generate_shadow_entry()
1146 ops->clear_ips(se); in ppgtt_generate_shadow_entry()
1148 ops->set_pfn(se, s->shadow_page.mfn); in ppgtt_generate_shadow_entry()
1177 struct intel_gvt_gtt_entry *se) in split_2MB_gtt_entry() argument
1189 start_gfn = ops->get_pfn(se); in split_2MB_gtt_entry()
1202 sub_se.val64 = se->val64; in split_2MB_gtt_entry()
1206 sub_se.val64 |= (se->val64 & _PAGE_PAT_LARGE) >> 5; in split_2MB_gtt_entry()
1213 se->val64 &= ~_PAGE_DIRTY; in split_2MB_gtt_entry()
1215 ops->clear_pse(se); in split_2MB_gtt_entry()
1216 ops->clear_ips(se); in split_2MB_gtt_entry()
1217 ops->set_pfn(se, sub_spt->shadow_page.mfn); in split_2MB_gtt_entry()
1218 ppgtt_set_shadow_entry(spt, se, index); in split_2MB_gtt_entry()
1224 struct intel_gvt_gtt_entry *se) in split_64KB_gtt_entry() argument
1227 struct intel_gvt_gtt_entry entry = *se; in split_64KB_gtt_entry()
1236 start_gfn = ops->get_pfn(se); in split_64KB_gtt_entry()
1258 struct intel_gvt_gtt_entry se = *ge; in ppgtt_populate_shadow_entry() local
1279 return split_64KB_gtt_entry(vgpu, spt, index, &se); in ppgtt_populate_shadow_entry()
1284 return split_2MB_gtt_entry(vgpu, spt, index, &se); in ppgtt_populate_shadow_entry()
1302 pte_ops->set_pfn(&se, dma_addr >> PAGE_SHIFT); in ppgtt_populate_shadow_entry()
1303 ppgtt_set_shadow_entry(spt, &se, index); in ppgtt_populate_shadow_entry()
1313 struct intel_gvt_gtt_entry se, ge; in ppgtt_populate_spt() local
1327 ppgtt_get_shadow_entry(spt, &se, i); in ppgtt_populate_spt()
1328 ppgtt_generate_shadow_entry(&se, s, &ge); in ppgtt_populate_spt()
1329 ppgtt_set_shadow_entry(spt, &se, i); in ppgtt_populate_spt()
1333 ops->set_pfn(&se, gvt->gtt.scratch_mfn); in ppgtt_populate_spt()
1334 ppgtt_set_shadow_entry(spt, &se, i); in ppgtt_populate_spt()
1351 struct intel_gvt_gtt_entry *se, unsigned long index) in ppgtt_handle_guest_entry_removal() argument
1358 spt->shadow_page.type, se->val64, index); in ppgtt_handle_guest_entry_removal()
1361 se->type, index, se->val64); in ppgtt_handle_guest_entry_removal()
1363 if (!ops->test_present(se)) in ppgtt_handle_guest_entry_removal()
1366 if (ops->get_pfn(se) == in ppgtt_handle_guest_entry_removal()
1370 if (gtt_type_is_pt(get_next_pt_type(se->type))) { in ppgtt_handle_guest_entry_removal()
1372 intel_vgpu_find_spt_by_mfn(vgpu, ops->get_pfn(se)); in ppgtt_handle_guest_entry_removal()
1383 WARN(se->type == GTT_TYPE_PPGTT_PTE_64K_ENTRY, in ppgtt_handle_guest_entry_removal()
1385 ppgtt_invalidate_pte(spt, se); in ppgtt_handle_guest_entry_removal()
1391 spt, se->val64, se->type); in ppgtt_handle_guest_entry_removal()
1725 struct intel_gvt_gtt_entry we, se; in ppgtt_handle_guest_write_page_table_bytes() local
1753 ppgtt_get_shadow_entry(spt, &se, index); in ppgtt_handle_guest_write_page_table_bytes()
1754 ret = ppgtt_handle_guest_entry_removal(spt, &se, index); in ppgtt_handle_guest_write_page_table_bytes()
1757 ops->set_pfn(&se, vgpu->gtt.scratch_pt[type].page_mfn); in ppgtt_handle_guest_write_page_table_bytes()
1758 ppgtt_set_shadow_entry(spt, &se, index); in ppgtt_handle_guest_write_page_table_bytes()
1789 struct intel_gvt_gtt_entry se; in invalidate_ppgtt_mm() local
1796 ppgtt_get_shadow_root_entry(mm, &se, index); in invalidate_ppgtt_mm()
1798 if (!ops->test_present(&se)) in invalidate_ppgtt_mm()
1801 ppgtt_invalidate_spt_by_shadow_entry(vgpu, &se); in invalidate_ppgtt_mm()
1802 se.val64 = 0; in invalidate_ppgtt_mm()
1803 ppgtt_set_shadow_root_entry(mm, &se, index); in invalidate_ppgtt_mm()
1806 NULL, se.type, se.val64, index); in invalidate_ppgtt_mm()
1820 struct intel_gvt_gtt_entry ge, se; in shadow_ppgtt_mm() local
1843 ppgtt_generate_shadow_entry(&se, spt, &ge); in shadow_ppgtt_mm()
1844 ppgtt_set_shadow_root_entry(mm, &se, index); in shadow_ppgtt_mm()
1847 NULL, se.type, se.val64, index); in shadow_ppgtt_mm()
2434 struct intel_gvt_gtt_entry se; in alloc_scratch_pages() local
2436 memset(&se, 0, sizeof(struct intel_gvt_gtt_entry)); in alloc_scratch_pages()
2437 se.type = get_entry_type(type - 1); in alloc_scratch_pages()
2438 ops->set_pfn(&se, gtt->scratch_pt[type - 1].page_mfn); in alloc_scratch_pages()
2443 se.val64 |= _PAGE_PRESENT | _PAGE_RW; in alloc_scratch_pages()
2445 se.val64 |= PPAT_CACHED; in alloc_scratch_pages()
2448 ops->set_entry(scratch_pt, &se, i, false, 0, vgpu); in alloc_scratch_pages()