Lines Matching refs:dte
196 static phys_addr_t sun50i_dte_get_pt_address(u32 dte)
198 return (phys_addr_t)dte & SUN50I_DTE_PT_ADDRESS_MASK;
201 static bool sun50i_dte_is_pt_valid(u32 dte)
203 return (dte & SUN50I_DTE_PT_ATTRS) == SUN50I_DTE_PT_VALID;
559 u32 dte;
562 dte = *dte_addr;
563 if (sun50i_dte_is_pt_valid(dte)) {
564 phys_addr_t pt_phys = sun50i_dte_get_pt_address(dte);
572 dte = sun50i_mk_dte(virt_to_phys(page_table));
573 old_dte = cmpxchg(dte_addr, 0, dte);
581 dte = old_dte;
630 u32 dte;
632 dte = sun50i_domain->dt[sun50i_iova_get_dte_index(iova)];
633 if (!sun50i_dte_is_pt_valid(dte))
636 pt_phys = sun50i_dte_get_pt_address(dte);
654 u32 dte, pte;
656 dte = sun50i_domain->dt[sun50i_iova_get_dte_index(iova)];
657 if (!sun50i_dte_is_pt_valid(dte))
660 pt_phys = sun50i_dte_get_pt_address(dte);
736 u32 dte;
739 dte = *dte_addr;
740 if (!sun50i_dte_is_pt_valid(dte))
746 pt_phys = sun50i_dte_get_pt_address(dte);