Lines Matching refs:esid

86 esid2idx(uint64_t esid, int level)  in esid2idx()  argument
91 return ((esid >> shift) & 0xF); in esid2idx()
102 esid2base(uint64_t esid, int level) in esid2base() argument
109 return (esid & mask); in esid2base()
117 make_new_leaf(uint64_t esid, uint64_t slbv, struct slbtnode *parent) in make_new_leaf() argument
123 idx = esid2idx(esid, parent->ua_level); in make_new_leaf()
131 child->ua_base = esid2base(esid, child->ua_level); in make_new_leaf()
132 idx = esid2idx(esid, child->ua_level); in make_new_leaf()
134 child->u.slb_entries[idx].slbe = (esid << SLBE_ESID_SHIFT) | SLBE_VALID; in make_new_leaf()
146 idx = esid2idx(esid, parent->ua_level); in make_new_leaf()
158 make_intermediate(uint64_t esid, struct slbtnode *parent) in make_intermediate() argument
163 idx = esid2idx(esid, parent->ua_level); in make_intermediate()
165 KASSERT(esid2base(esid, child->ua_level) != child->ua_base, in make_intermediate()
174 while (esid2base(esid, level) != in make_intermediate()
180 level, esid, child->ua_base, parent)); in make_intermediate()
188 inter->ua_base = esid2base(esid, inter->ua_level); in make_intermediate()
232 uint64_t esid = va >> ADDR_SR_SHFT; in user_va_to_slb_entry() local
241 idx = esid2idx(esid, ua->ua_level); in user_va_to_slb_entry()
259 esid2base(esid, ua->ua_level) != ua->ua_base) in user_va_to_slb_entry()
290 allocate_user_vsid(pmap_t pm, uint64_t esid, int large) in allocate_user_vsid() argument
312 idx = esid2idx(esid, ua->ua_level); in allocate_user_vsid()
317 ua->u.slb_entries[idx].slbe = (esid << SLBE_ESID_SHIFT) in allocate_user_vsid()
326 slb = make_new_leaf(esid, slbv, ua); in allocate_user_vsid()
334 if (esid2base(esid, next->ua_level) != next->ua_base) { in allocate_user_vsid()
335 inter = make_intermediate(esid, ua); in allocate_user_vsid()
336 slb = make_new_leaf(esid, slbv, inter); in allocate_user_vsid()
354 free_vsid(pmap_t pm, uint64_t esid, int large) in free_vsid() argument
367 idx = esid2idx(esid, ua->ua_level); in free_vsid()
378 esid2base(esid, ua->ua_level) != ua->ua_base) { in free_vsid()
551 uint64_t esid, addr; in handle_kernel_slb_spill() local
556 esid = (uintptr_t)addr >> ADDR_SR_SHFT; in handle_kernel_slb_spill()
557 slbe = (esid << SLBE_ESID_SHIFT) | SLBE_VALID; in handle_kernel_slb_spill()
595 uint64_t esid; in handle_user_slb_spill() local
601 esid = (uintptr_t)addr >> ADDR_SR_SHFT; in handle_user_slb_spill()
608 (void)allocate_user_vsid(pm, esid, 0); in handle_user_slb_spill()