/openbmc/linux/drivers/misc/cxl/ |
H A D | fault.c | 33 struct copro_slb *slb) in find_free_sste() argument 40 if (slb->vsid & SLB_VSID_B_1T) in find_free_sste() 50 if (sste_matches(sste, slb)) in find_free_sste() 70 sste = find_free_sste(ctx, slb); in cxl_load_segment() 75 sste - ctx->sstp, slb->vsid, slb->esid); in cxl_load_segment() 76 trace_cxl_ste_write(ctx, sste - ctx->sstp, slb->esid, slb->vsid); in cxl_load_segment() 87 struct copro_slb slb = {0,0}; in cxl_fault_segment() local 91 cxl_load_segment(ctx, &slb); in cxl_fault_segment() 296 struct copro_slb slb; in cxl_prefault_vma() local 309 if (last_esid == slb.esid) in cxl_prefault_vma() [all …]
|
/openbmc/qemu/target/ppc/ |
H A D | mmu-hash64.c | 65 ppc_slb_t *slb = &env->slb[n]; in slb_lookup() local 68 PRIx64 "\n", __func__, n, slb->esid, slb->vsid); in slb_lookup() 162 ppc_slb_t *slb = &env->slb[n]; in helper_SLBIA() local 199 ppc_slb_t *slb = &env->slb[n]; in helper_SLBIAG() local 209 ppc_slb_t *slb; in __helper_slbie() local 212 if (!slb) { in __helper_slbie() 244 ppc_slb_t *slb = &env->slb[slot]; in ppc_store_slb() local 287 slb->esid, slb->vsid); in ppc_store_slb() 298 ppc_slb_t *slb = &env->slb[slot]; in ppc_load_slb_esid() local 313 ppc_slb_t *slb = &env->slb[slot]; in ppc_load_slb_vsid() local [all …]
|
H A D | kvm.c | 877 for (i = 0; i < ARRAY_SIZE(env->slb); i++) { in kvmppc_put_books_sregs() 878 sregs.u.s.ppc64.slb[i].slbe = env->slb[i].esid; in kvmppc_put_books_sregs() 879 if (env->slb[i].esid & SLB_ESID_V) { in kvmppc_put_books_sregs() 880 sregs.u.s.ppc64.slb[i].slbe |= i; in kvmppc_put_books_sregs() 882 sregs.u.s.ppc64.slb[i].slbv = env->slb[i].vsid; in kvmppc_put_books_sregs() 1179 memset(env->slb, 0, sizeof(env->slb)); in kvmppc_get_books_sregs() 1180 for (i = 0; i < ARRAY_SIZE(env->slb); i++) { in kvmppc_get_books_sregs() 1181 target_ulong rb = sregs.u.s.ppc64.slb[i].slbe; in kvmppc_get_books_sregs() 1182 target_ulong rs = sregs.u.s.ppc64.slb[i].slbv; in kvmppc_get_books_sregs()
|
H A D | machine.c | 541 if (ppc_store_slb(cpu, i, env->slb[i].esid, env->slb[i].vsid) < 0) { in slb_post_load() 558 VMSTATE_SLB_ARRAY(env.slb, PowerPCCPU, MAX_SLB_ENTRIES),
|
H A D | cpu.h | 1258 ppc_slb_t slb[MAX_SLB_ENTRIES]; /* PowerPC 64 SLB area */ member
|
/openbmc/linux/arch/powerpc/kvm/ |
H A D | book3s_64_mmu.c | 41 if (vcpu->arch.slb[i].tb) in kvmppc_mmu_book3s_64_find_slbe() 45 return &vcpu->arch.slb[i]; in kvmppc_mmu_book3s_64_find_slbe() 56 vcpu->arch.slb[i].esid, in kvmppc_mmu_book3s_64_find_slbe() 57 vcpu->arch.slb[i].vsid); in kvmppc_mmu_book3s_64_find_slbe() 78 ((slb->vsid) << (kvmppc_slb_sid_shift(slb) - VPN_SHIFT)); in kvmppc_slb_calc_vpn() 84 struct kvmppc_slb *slb; in kvmppc_mmu_book3s_64_ea_to_vp() local 87 if (!slb) in kvmppc_mmu_book3s_64_ea_to_vp() 584 if (slb) { in kvmppc_mmu_book3s_64_esid_to_vsid() 585 gvsid = slb->vsid; in kvmppc_mmu_book3s_64_esid_to_vsid() 587 if (slb->tb) { in kvmppc_mmu_book3s_64_esid_to_vsid() [all …]
|
H A D | book3s_hv_ras.c | 39 struct slb_shadow *slb; in reload_slb() local 46 slb = vcpu->arch.slb_shadow.pinned_addr; in reload_slb() 47 if (!slb) in reload_slb() 51 n = min_t(u32, be32_to_cpu(slb->persistent), SLB_MIN_SIZE); in reload_slb() 52 if ((void *) &slb->save_area[n] > vcpu->arch.slb_shadow.pinned_end) in reload_slb() 57 unsigned long rb = be64_to_cpu(slb->save_area[i].esid); in reload_slb() 58 unsigned long rs = be64_to_cpu(slb->save_area[i].vsid); in reload_slb()
|
H A D | book3s_64_mmu_host.c | 281 if (!(svcpu->slb[i].esid & SLB_ESID_V)) in kvmppc_mmu_next_segment() 283 else if ((svcpu->slb[i].esid & ESID_MASK) == esid) { in kvmppc_mmu_next_segment() 327 svcpu->slb[slb_index].esid = 0; in kvmppc_mmu_map_segment() 348 svcpu->slb[slb_index].esid = slb_esid; in kvmppc_mmu_map_segment() 349 svcpu->slb[slb_index].vsid = slb_vsid; in kvmppc_mmu_map_segment() 365 if ((svcpu->slb[i].esid & SLB_ESID_V) && in kvmppc_mmu_flush_segment() 366 (svcpu->slb[i].esid & seg_mask) == ea) { in kvmppc_mmu_flush_segment() 368 svcpu->slb[i].esid = 0; in kvmppc_mmu_flush_segment() 379 svcpu->slb[0].esid = 0; in kvmppc_mmu_flush_segments()
|
H A D | book3s_pr.c | 136 memcpy(svcpu->slb, to_book3s(vcpu)->slb_shadow, sizeof(svcpu->slb)); in kvmppc_core_vcpu_load_pr() 168 memcpy(to_book3s(vcpu)->slb_shadow, svcpu->slb, sizeof(svcpu->slb)); in kvmppc_core_vcpu_put_pr() 1473 sregs->u.s.ppc64.slb[i].slbe = vcpu->arch.slb[i].orige | i; in kvm_arch_vcpu_ioctl_get_sregs_pr() 1474 sregs->u.s.ppc64.slb[i].slbv = vcpu->arch.slb[i].origv; in kvm_arch_vcpu_ioctl_get_sregs_pr() 1505 u64 rb = sregs->u.s.ppc64.slb[i].slbe; in kvm_arch_vcpu_ioctl_set_sregs_pr() 1506 u64 rs = sregs->u.s.ppc64.slb[i].slbv; in kvm_arch_vcpu_ioctl_set_sregs_pr()
|
H A D | book3s_hv_p9_entry.c | 347 mtslb(vcpu->arch.slb[i].orige, vcpu->arch.slb[i].origv); in switch_mmu_to_guest_hpt() 409 vcpu->arch.slb[nr].orige = slbee | i; in save_clear_guest_mmu() 410 vcpu->arch.slb[nr].origv = slbev; in save_clear_guest_mmu()
|
H A D | book3s_hv.c | 479 vcpu->arch.slb[r].orige, vcpu->arch.slb[r].origv); in kvmppc_dump_regs() 2070 sregs->u.s.ppc64.slb[i].slbe = vcpu->arch.slb[i].orige; in kvm_arch_vcpu_ioctl_get_sregs_hv() 2071 sregs->u.s.ppc64.slb[i].slbv = vcpu->arch.slb[i].origv; in kvm_arch_vcpu_ioctl_get_sregs_hv() 2088 if (sregs->u.s.ppc64.slb[i].slbe & SLB_ESID_V) { in kvm_arch_vcpu_ioctl_set_sregs_hv() 2089 vcpu->arch.slb[j].orige = sregs->u.s.ppc64.slb[i].slbe; in kvm_arch_vcpu_ioctl_set_sregs_hv() 2090 vcpu->arch.slb[j].origv = sregs->u.s.ppc64.slb[i].slbv; in kvm_arch_vcpu_ioctl_set_sregs_hv()
|
H A D | book3s_64_mmu_hv.c | 318 if (!(vcpu->arch.slb[i].orige & SLB_ESID_V)) in kvmppc_mmu_book3s_hv_find_slbe() 321 if (vcpu->arch.slb[i].origv & SLB_VSID_B_1T) in kvmppc_mmu_book3s_hv_find_slbe() 326 if (((vcpu->arch.slb[i].orige ^ eaddr) & mask) == 0) in kvmppc_mmu_book3s_hv_find_slbe() 327 return &vcpu->arch.slb[i]; in kvmppc_mmu_book3s_hv_find_slbe()
|
/openbmc/linux/arch/powerpc/platforms/cell/ |
H A D | spu_base.c | 134 static inline void spu_load_slb(struct spu *spu, int slbe, struct copro_slb *slb) in spu_load_slb() argument 139 __func__, slbe, slb->vsid, slb->esid); in spu_load_slb() 145 out_be64(&priv2->slb_vsid_RW, slb->vsid); in spu_load_slb() 147 out_be64(&priv2->slb_esid_RW, slb->esid); in spu_load_slb() 152 struct copro_slb slb; in __spu_trap_data_seg() local 155 ret = copro_calculate_slb(spu->mm, ea, &slb); in __spu_trap_data_seg() 159 spu_load_slb(spu, spu->slb_replace, &slb); in __spu_trap_data_seg() 208 static void __spu_kernel_slb(void *addr, struct copro_slb *slb) in __spu_kernel_slb() argument 218 slb->vsid = (get_kernel_vsid(ea, MMU_SEGSIZE_256M) << SLB_VSID_SHIFT) | in __spu_kernel_slb() 220 slb->esid = (ea & ESID_MASK) | SLB_ESID_V; in __spu_kernel_slb()
|
/openbmc/linux/arch/powerpc/mm/ |
H A D | copro_fault.c | 83 int copro_calculate_slb(struct mm_struct *mm, u64 ea, struct copro_slb *slb) in copro_calculate_slb() argument 132 slb->esid = (ea & (ssize == MMU_SEGSIZE_1T ? ESID_MASK_1T : ESID_MASK)) | SLB_ESID_V; in copro_calculate_slb() 133 slb->vsid = vsid; in copro_calculate_slb()
|
/openbmc/linux/arch/powerpc/include/asm/ |
H A D | copro.h | 19 int copro_calculate_slb(struct mm_struct *mm, u64 ea, struct copro_slb *slb);
|
H A D | kvm_book3s_asm.h | 148 } slb[64]; /* guest SLB */ member
|
H A D | kvm_host.h | 516 struct kvmppc_slb slb[64]; member
|
/openbmc/linux/arch/powerpc/mm/book3s64/ |
H A D | Makefile | 8 obj-y += hash_pgtable.o hash_utils.o hash_tlb.o slb.o slice.o
|
/openbmc/linux/arch/x86/kvm/ |
H A D | trace.h | 758 TP_PROTO(__u64 rip, __u32 slb), 759 TP_ARGS(rip, slb), 763 __field( __u32, slb ) 768 __entry->slb = slb; 772 __entry->rip, __entry->slb)
|
/openbmc/linux/tools/arch/powerpc/include/uapi/asm/ |
H A D | kvm.h | 185 } slb[64]; member
|
/openbmc/linux/arch/powerpc/include/uapi/asm/ |
H A D | kvm.h | 185 } slb[64]; member
|
/openbmc/qemu/linux-headers/asm-powerpc/ |
H A D | kvm.h | 184 } slb[64]; member
|
/openbmc/linux/arch/powerpc/kernel/ |
H A D | asm-offsets.c | 465 OFFSET(VCPU_SLB, kvm_vcpu, arch.slb); in main() 558 SVCPU_FIELD(SVCPU_SLB, slb); in main()
|
/openbmc/linux/arch/s390/tools/ |
H A D | opcodes.txt | 830 e399 slb RXY_RRRD
|