Lines Matching refs:pte

719 static void build_huge_update_entries(u32 **p, unsigned int pte,  in build_huge_update_entries()  argument
739 build_convert_pte_to_entrylo(p, pte); in build_huge_update_entries()
740 UASM_i_MTC0(p, pte, C0_ENTRYLO0); /* load it */ in build_huge_update_entries()
743 UASM_i_ADDIU(p, pte, pte, HPAGE_SIZE >> 7); in build_huge_update_entries()
745 UASM_i_ADDU(p, pte, pte, tmp); in build_huge_update_entries()
747 UASM_i_MTC0(p, pte, C0_ENTRYLO1); /* load it */ in build_huge_update_entries()
752 unsigned int pte, in build_huge_handler_tail() argument
756 UASM_i_SC(p, pte, 0, ptr); in build_huge_handler_tail()
757 uasm_il_beqz(p, r, pte, label_tlb_huge_update); in build_huge_handler_tail()
758 UASM_i_LW(p, pte, 0, ptr); /* Needed because SC killed our PTE */ in build_huge_handler_tail()
760 UASM_i_SW(p, pte, 0, ptr); in build_huge_handler_tail()
762 build_huge_update_entries(p, pte, ptr); in build_huge_handler_tail()
763 build_huge_tlb_write_entry(p, l, r, pte, tlb_indexed, 0); in build_huge_handler_tail()
1521 iPTE_LW(u32 **p, unsigned int pte, unsigned int ptr) in iPTE_LW() argument
1526 uasm_i_lld(p, pte, 0, ptr); in iPTE_LW()
1529 UASM_i_LL(p, pte, 0, ptr); in iPTE_LW()
1533 uasm_i_ld(p, pte, 0, ptr); in iPTE_LW()
1536 UASM_i_LW(p, pte, 0, ptr); in iPTE_LW()
1541 iPTE_SW(u32 **p, struct uasm_reloc **r, unsigned int pte, unsigned int ptr, in iPTE_SW() argument
1551 uasm_i_or(p, pte, pte, scratch); in iPTE_SW()
1554 uasm_i_ori(p, pte, pte, mode); in iPTE_SW()
1558 uasm_i_scd(p, pte, 0, ptr); in iPTE_SW()
1561 UASM_i_SC(p, pte, 0, ptr); in iPTE_SW()
1564 uasm_il_beqzl(p, r, pte, label_smp_pgtable_change); in iPTE_SW()
1566 uasm_il_beqz(p, r, pte, label_smp_pgtable_change); in iPTE_SW()
1571 uasm_i_ll(p, pte, sizeof(pte_t) / 2, ptr); in iPTE_SW()
1572 uasm_i_ori(p, pte, pte, hwmode); in iPTE_SW()
1573 uasm_i_sc(p, pte, sizeof(pte_t) / 2, ptr); in iPTE_SW()
1574 uasm_il_beqz(p, r, pte, label_smp_pgtable_change); in iPTE_SW()
1576 uasm_i_lw(p, pte, 0, ptr); in iPTE_SW()
1585 uasm_i_sd(p, pte, 0, ptr); in iPTE_SW()
1588 UASM_i_SW(p, pte, 0, ptr); in iPTE_SW()
1592 uasm_i_lw(p, pte, sizeof(pte_t) / 2, ptr); in iPTE_SW()
1593 uasm_i_ori(p, pte, pte, hwmode); in iPTE_SW()
1594 uasm_i_sw(p, pte, sizeof(pte_t) / 2, ptr); in iPTE_SW()
1595 uasm_i_lw(p, pte, 0, ptr); in iPTE_SW()
1608 int pte, int ptr, int scratch, enum label_id lid) in build_pte_present() argument
1610 int t = scratch >= 0 ? scratch : pte; in build_pte_present()
1614 uasm_il_bbit0(p, r, pte, ilog2(_PAGE_PRESENT), lid); in build_pte_present()
1617 uasm_i_srl(p, t, pte, _PAGE_PRESENT_SHIFT); in build_pte_present()
1620 if (pte == t) in build_pte_present()
1622 iPTE_LW(p, pte, ptr); in build_pte_present()
1625 uasm_i_srl(p, t, pte, _PAGE_PRESENT_SHIFT); in build_pte_present()
1629 if (pte == t) in build_pte_present()
1631 iPTE_LW(p, pte, ptr); in build_pte_present()
1637 build_make_valid(u32 **p, struct uasm_reloc **r, unsigned int pte, in build_make_valid() argument
1642 iPTE_SW(p, r, pte, ptr, mode); in build_make_valid()
1651 unsigned int pte, unsigned int ptr, int scratch, in build_pte_writable() argument
1654 int t = scratch >= 0 ? scratch : pte; in build_pte_writable()
1656 uasm_i_srl(p, t, pte, _PAGE_PRESENT_SHIFT); in build_pte_writable()
1660 if (pte == t) in build_pte_writable()
1662 iPTE_LW(p, pte, ptr); in build_pte_writable()
1671 build_make_write(u32 **p, struct uasm_reloc **r, unsigned int pte, in build_make_write() argument
1677 iPTE_SW(p, r, pte, ptr, mode); in build_make_write()
1686 unsigned int pte, unsigned int ptr, int scratch, in build_pte_modifiable() argument
1690 uasm_il_bbit0(p, r, pte, ilog2(_PAGE_WRITE), lid); in build_pte_modifiable()
1693 int t = scratch >= 0 ? scratch : pte; in build_pte_modifiable()
1694 uasm_i_srl(p, t, pte, _PAGE_WRITE_SHIFT); in build_pte_modifiable()
1697 if (pte == t) in build_pte_modifiable()
1699 iPTE_LW(p, pte, ptr); in build_pte_modifiable()
1715 build_r3000_pte_reload_tlbwi(u32 **p, unsigned int pte, unsigned int tmp) in build_r3000_pte_reload_tlbwi() argument
1717 uasm_i_mtc0(p, pte, C0_ENTRYLO0); /* cp0 delay */ in build_r3000_pte_reload_tlbwi()
1732 struct uasm_reloc **r, unsigned int pte, in build_r3000_tlb_reload_write() argument
1736 uasm_i_mtc0(p, pte, C0_ENTRYLO0); /* cp0 delay */ in build_r3000_tlb_reload_write()
1749 build_r3000_tlbchange_handler_head(u32 **p, unsigned int pte, in build_r3000_tlbchange_handler_head() argument
1754 uasm_i_mfc0(p, pte, C0_BADVADDR); in build_r3000_tlbchange_handler_head()
1757 uasm_i_srl(p, pte, pte, 22); /* load delay */ in build_r3000_tlbchange_handler_head()
1758 uasm_i_sll(p, pte, pte, 2); in build_r3000_tlbchange_handler_head()
1759 uasm_i_addu(p, ptr, ptr, pte); in build_r3000_tlbchange_handler_head()
1760 uasm_i_mfc0(p, pte, C0_CONTEXT); in build_r3000_tlbchange_handler_head()
1762 uasm_i_andi(p, pte, pte, 0xffc); /* load delay */ in build_r3000_tlbchange_handler_head()
1763 uasm_i_addu(p, ptr, ptr, pte); in build_r3000_tlbchange_handler_head()
1764 uasm_i_lw(p, pte, 0, ptr); in build_r3000_tlbchange_handler_head()