/openbmc/linux/arch/powerpc/include/asm/ |
H A D | ultravisor.h | 29 static inline int uv_register_pate(u64 lpid, u64 dw0, u64 dw1) in uv_register_pate() argument 31 return ucall_norets(UV_WRITE_PATE, lpid, dw0, dw1); in uv_register_pate() 49 static inline int uv_page_in(u64 lpid, u64 src_ra, u64 dst_gpa, u64 flags, in uv_page_in() argument 52 return ucall_norets(UV_PAGE_IN, lpid, src_ra, dst_gpa, flags, in uv_page_in() 56 static inline int uv_page_out(u64 lpid, u64 dst_ra, u64 src_gpa, u64 flags, in uv_page_out() argument 59 return ucall_norets(UV_PAGE_OUT, lpid, dst_ra, src_gpa, flags, in uv_page_out() 63 static inline int uv_register_mem_slot(u64 lpid, u64 start_gpa, u64 size, in uv_register_mem_slot() argument 66 return ucall_norets(UV_REGISTER_MEM_SLOT, lpid, start_gpa, in uv_register_mem_slot() 70 static inline int uv_unregister_mem_slot(u64 lpid, u64 slotid) in uv_unregister_mem_slot() argument 72 return ucall_norets(UV_UNREGISTER_MEM_SLOT, lpid, slotid); in uv_unregister_mem_slot() [all …]
|
H A D | trace.h | 293 TP_PROTO(unsigned long lpid, unsigned long local, unsigned long rb, 296 TP_ARGS(lpid, local, rb, rs, ric, prs, r), 298 __field(unsigned long, lpid) 308 __entry->lpid = lpid; 318 "prs=0x%lx, r=0x%lx", __entry->lpid, __entry->local,
|
H A D | kvm_book3s.h | 178 extern unsigned long __kvmhv_copy_tofrom_guest_radix(int lpid, int pid, 194 unsigned int pshift, unsigned int lpid); 198 unsigned int lpid); 201 unsigned int lpid); 210 unsigned int lpid); 303 void kvmhv_set_ptbl_entry(unsigned int lpid, u64 dw0, u64 dw1); 307 long do_h_rpt_invalidate_pat(struct kvm_vcpu *vcpu, unsigned long lpid,
|
H A D | mmu_context.h | 214 void do_h_rpt_invalidate_prt(unsigned long pid, unsigned long lpid, 219 unsigned long lpid, in do_h_rpt_invalidate_prt() argument
|
H A D | kvm_book3s_64.h | 101 int kvmhv_nested_next_lpid(struct kvm *kvm, int lpid); 627 unsigned long mmu_seq, unsigned int lpid, 677 extern pte_t *find_kvm_nested_guest_pte(struct kvm *kvm, unsigned long lpid,
|
/openbmc/linux/arch/powerpc/mm/book3s64/ |
H A D | radix_tlb.c | 130 static __always_inline void __tlbie_lpid(unsigned long lpid, unsigned long ric) in __tlbie_lpid() argument 135 rs = lpid; in __tlbie_lpid() 141 trace_tlbie(lpid, 0, rb, rs, ric, prs, r); in __tlbie_lpid() 144 static __always_inline void __tlbie_lpid_guest(unsigned long lpid, unsigned long ric) in __tlbie_lpid_guest() argument 149 rs = lpid; in __tlbie_lpid_guest() 155 trace_tlbie(lpid, 0, rb, rs, ric, prs, r); in __tlbie_lpid_guest() 190 static __always_inline void __tlbie_lpid_va(unsigned long va, unsigned long lpid, in __tlbie_lpid_va() argument 197 rs = lpid; in __tlbie_lpid_va() 203 trace_tlbie(lpid, 0, rb, rs, ric, prs, r); in __tlbie_lpid_va() 254 static inline void fixup_tlbie_lpid_va(unsigned long va, unsigned long lpid, in fixup_tlbie_lpid_va() argument [all …]
|
H A D | pgtable.c | 310 static void flush_partition(unsigned int lpid, bool radix) in flush_partition() argument 313 radix__flush_all_lpid(lpid); in flush_partition() 314 radix__flush_all_lpid_guest(lpid); in flush_partition() 318 "r" (TLBIEL_INVAL_SET_LPID), "r" (lpid)); in flush_partition() 321 trace_tlbie(lpid, 0, TLBIEL_INVAL_SET_LPID, lpid, 2, 0, 0); in flush_partition() 325 void mmu_partition_table_set_entry(unsigned int lpid, unsigned long dw0, in mmu_partition_table_set_entry() argument 328 unsigned long old = be64_to_cpu(partition_tb[lpid].patb0); in mmu_partition_table_set_entry() 339 partition_tb[lpid].patb0 = cpu_to_be64(dw0); in mmu_partition_table_set_entry() 340 partition_tb[lpid].patb1 = cpu_to_be64(dw1); in mmu_partition_table_set_entry() 350 uv_register_pate(lpid, dw0, dw1); in mmu_partition_table_set_entry() [all …]
|
/openbmc/linux/arch/powerpc/kvm/ |
H A D | book3s_64_mmu_radix.c | 35 unsigned long __kvmhv_copy_tofrom_guest_radix(int lpid, int pid, in __kvmhv_copy_tofrom_guest_radix() argument 45 return plpar_hcall_norets(H_COPY_TOFROM_GUEST, lpid, pid, eaddr, in __kvmhv_copy_tofrom_guest_radix() 66 if (old_lpid != lpid) in __kvmhv_copy_tofrom_guest_radix() 67 mtspr(SPRN_LPID, lpid); in __kvmhv_copy_tofrom_guest_radix() 87 if (lpid != old_lpid) in __kvmhv_copy_tofrom_guest_radix() 99 int lpid = vcpu->kvm->arch.lpid; in kvmhv_copy_tofrom_guest_radix() local 108 lpid = vcpu->arch.nested->shadow_lpid; in kvmhv_copy_tofrom_guest_radix() 116 return __kvmhv_copy_tofrom_guest_radix(lpid, pid, eaddr, to, from, n); in kvmhv_copy_tofrom_guest_radix() 311 unsigned int pshift, unsigned int lpid) in kvmppc_radix_tlbie_page() argument 326 radix__flush_tlb_lpid_page(lpid, addr, psize); in kvmppc_radix_tlbie_page() [all …]
|
H A D | book3s_hv_nested.c | 70 hr->lpid = swab32(hr->lpid); in byteswap_hv_regs() 350 l2 = kvmhv_get_nested(vcpu->kvm, l2_hv.lpid, true); in kvmhv_enter_nested_guest() 487 static void kvmhv_flush_lpid(unsigned int lpid) in kvmhv_flush_lpid() argument 492 radix__flush_all_lpid(lpid); in kvmhv_flush_lpid() 498 lpid, TLBIEL_INVAL_SET_LPID); in kvmhv_flush_lpid() 500 rc = pseries_rpt_invalidate(lpid, H_RPTI_TARGET_CMMU, in kvmhv_flush_lpid() 509 void kvmhv_set_ptbl_entry(unsigned int lpid, u64 dw0, u64 dw1) in kvmhv_set_ptbl_entry() argument 512 mmu_partition_table_set_entry(lpid, dw0, dw1, true); in kvmhv_set_ptbl_entry() 516 pseries_partition_tb[lpid].patb0 = cpu_to_be64(dw0); in kvmhv_set_ptbl_entry() 517 pseries_partition_tb[lpid].patb1 = cpu_to_be64(dw1); in kvmhv_set_ptbl_entry() [all …]
|
H A D | e500mc.c | 347 int lpid; in kvmppc_core_init_vm_e500mc() local 349 lpid = kvmppc_alloc_lpid(); in kvmppc_core_init_vm_e500mc() 350 if (lpid < 0) in kvmppc_core_init_vm_e500mc() 351 return lpid; in kvmppc_core_init_vm_e500mc() 359 lpid <<= 1; in kvmppc_core_init_vm_e500mc() 361 kvm->arch.lpid = lpid; in kvmppc_core_init_vm_e500mc() 367 int lpid = kvm->arch.lpid; in kvmppc_core_destroy_vm_e500mc() local 370 lpid >>= 1; in kvmppc_core_destroy_vm_e500mc() 372 kvmppc_free_lpid(lpid); in kvmppc_core_destroy_vm_e500mc()
|
H A D | book3s_hv_p9_entry.c | 304 u32 lpid; in switch_mmu_to_guest_radix() local 307 lpid = nested ? nested->shadow_lpid : kvm->arch.lpid; in switch_mmu_to_guest_radix() 317 mtspr(SPRN_LPID, lpid); in switch_mmu_to_guest_radix() 328 u32 lpid; in switch_mmu_to_guest_hpt() local 332 lpid = kvm->arch.lpid; in switch_mmu_to_guest_hpt() 342 mtspr(SPRN_LPID, lpid); in switch_mmu_to_guest_hpt() 355 u32 lpid = kvm->arch.host_lpid; in switch_mmu_to_host() local 367 mtspr(SPRN_LPID, lpid); in switch_mmu_to_host()
|
H A D | book3s_hv_uvmem.c | 433 uv_unregister_mem_slot(kvm->arch.lpid, memslot->id); in __kvmppc_uvmem_memslot_delete() 449 ret = uv_register_mem_slot(kvm->arch.lpid, in __kvmppc_uvmem_memslot_create() 568 ret = uv_page_out(kvm->arch.lpid, pfn << page_shift, in __kvmppc_svm_page_out() 682 uv_svm_terminate(kvm->arch.lpid); in kvmppc_h_svm_init_abort() 780 ret = uv_page_in(kvm->arch.lpid, pfn << page_shift, in kvmppc_svm_page_in() 861 pr_info("LPID %d went secure\n", kvm->arch.lpid); in kvmppc_h_svm_init_done() 918 if (!uv_page_in(kvm->arch.lpid, pfn << page_shift, gpa, 0, in kvmppc_share_page() 1097 ret = uv_page_in(kvm->arch.lpid, pfn << PAGE_SHIFT, gfn << PAGE_SHIFT, in kvmppc_send_page_to_uv()
|
H A D | e500_mmu_host.c | 71 uint32_t lpid) in __write_host_tlbe() argument 82 mtspr(SPRN_MAS8, MAS8_TGS | get_thread_specific_lpid(lpid)); in __write_host_tlbe() 131 __write_host_tlbe(stlbe, mas0, vcpu_e500->vcpu.kvm->arch.lpid); in write_host_tlbe() 136 vcpu_e500->vcpu.kvm->arch.lpid); in write_host_tlbe()
|
/openbmc/linux/arch/powerpc/include/asm/book3s/64/ |
H A D | tlbflush-radix.h | 35 extern void radix__flush_tlb_lpid_page(unsigned int lpid, 38 extern void radix__flush_pwc_lpid(unsigned int lpid); 39 extern void radix__flush_all_lpid(unsigned int lpid); 40 extern void radix__flush_all_lpid_guest(unsigned int lpid); 43 static inline void radix__flush_tlb_lpid_page(unsigned int lpid, in radix__flush_tlb_lpid_page() argument 49 static inline void radix__flush_pwc_lpid(unsigned int lpid) in radix__flush_pwc_lpid() argument 53 static inline void radix__flush_all_lpid(unsigned int lpid) in radix__flush_all_lpid() argument 57 static inline void radix__flush_all_lpid_guest(unsigned int lpid) in radix__flush_all_lpid_guest() argument
|
/openbmc/qemu/target/ppc/ |
H A D | mmu-radix64.c | 66 uint64_t *lpid, uint64_t *pid) in ppc_radix64_get_fully_qualified_addr() argument 76 *lpid = 0; in ppc_radix64_get_fully_qualified_addr() 80 *lpid = env->spr[SPR_LPIDR]; in ppc_radix64_get_fully_qualified_addr() 84 *lpid = env->spr[SPR_LPIDR]; in ppc_radix64_get_fully_qualified_addr() 88 *lpid = 0; in ppc_radix64_get_fully_qualified_addr() 97 *lpid = env->spr[SPR_LPIDR]; in ppc_radix64_get_fully_qualified_addr() 104 *lpid = env->spr[SPR_LPIDR]; in ppc_radix64_get_fully_qualified_addr() 408 static bool validate_pate(PowerPCCPU *cpu, uint64_t lpid, ppc_v3_pate_t *pate) in validate_pate() argument 415 if (lpid == 0 && !FIELD_EX64(env->msr, MSR, HV)) { in validate_pate() 431 int mmu_idx, uint64_t lpid, in ppc_radix64_partition_scoped_xlate() argument [all …]
|
H A D | mmu-book3s-v3.c | 25 bool ppc64_v3_get_pate(PowerPCCPU *cpu, target_ulong lpid, ppc_v3_pate_t *entry) in ppc64_v3_get_pate() argument 37 if (pats <= lpid) { in ppc64_v3_get_pate() 42 patb += 16 * lpid; in ppc64_v3_get_pate()
|
H A D | mmu-book3s-v3.h | 70 bool ppc64_v3_get_pate(PowerPCCPU *cpu, target_ulong lpid,
|
/openbmc/linux/arch/powerpc/platforms/powernv/ |
H A D | vas-trace.h | 63 __field(int, lpid) 71 __entry->lpid = txattr->lpid; 77 __entry->lpid, __entry->pidr)
|
/openbmc/qemu/hw/ppc/ |
H A D | spapr_nested.c | 36 target_ulong lpid, ppc_v3_pate_t *entry) in spapr_get_pate_nested_hv() argument 40 assert(lpid != 0); in spapr_get_pate_nested_hv() 52 if (pats <= lpid) { in spapr_get_pate_nested_hv() 57 patb += 16 * lpid; in spapr_get_pate_nested_hv() 74 target_ulong lpid, ppc_v3_pate_t *entry) in spapr_get_pate_nested_papr() argument 77 assert(lpid != 0); in spapr_get_pate_nested_papr() 78 guest = spapr_get_nested_guest(spapr, lpid); in spapr_get_pate_nested_papr() 367 if (hv_state.lpid == 0) { in h_enter_nested() 403 l2_state.lpidr = hv_state.lpid; in h_enter_nested() 1507 target_ulong lpid = args[1]; in h_guest_getset_state() local [all …]
|
/openbmc/linux/include/misc/ |
H A D | cxllib.h | 102 u32 lpid; member
|
/openbmc/linux/Documentation/powerpc/ |
H A D | ultravisor.rst | 278 uint16_t lpid, /* LPAR ID */ 290 * U_PARAMETER if ``lpid`` is invalid. 344 uint16_t lpid, /* the LPAR ID */ 358 * U_PARAMETER if ``lpid`` is invalid. 411 uint16_t lpid, /* the LPAR ID */ 421 * U_PARAMETER if ``lpid`` is invalid. 457 uint32_t lpid, /* the LPAR ID */ 469 * U_PARAMETER if ``lpid`` is invalid. 566 uint64_t lpid, /* LPAR ID of the SVM */ 578 * U_PARAMETER if ``lpid`` is invalid. [all …]
|
/openbmc/qemu/include/hw/ppc/ |
H A D | spapr_nested.h | 358 uint32_t lpid; member 523 target_ulong lpid, ppc_v3_pate_t *entry); 527 target_ulong lpid, ppc_v3_pate_t *entry);
|
/openbmc/linux/drivers/usb/early/ |
H A D | ehci-dbgp.c | 197 u32 pids, lpid; in dbgp_wait_until_done() local 204 lpid = DBGP_PID_GET(pids); in dbgp_wait_until_done() 224 if ((lpid == USB_PID_NAK) || (lpid == USB_PID_NYET)) in dbgp_wait_until_done() 228 if (lpid == USB_PID_NAK) { in dbgp_wait_until_done()
|
/openbmc/linux/drivers/crypto/nx/ |
H A D | nx-common-powernv.c | 691 txattr.lpid = 0; /* lpid is 0 for kernel requests */ in nx_alloc_txwin() 770 u32 lpid, pid, tid, fifo_size; in vas_cfg_coproc_info() local 788 ret = of_property_read_u32(dn, "lpid", &lpid); in vas_cfg_coproc_info() 829 rxattr.lnotify_lpid = lpid; in vas_cfg_coproc_info()
|
/openbmc/linux/tools/testing/selftests/netfilter/ |
H A D | nft_flowtable.sh | 357 lpid=$! 373 if test -d /proc/"$lpid"/; then 374 kill $lpid 381 wait $lpid
|