| /Linux-v5.4/arch/powerpc/kvm/ |
| D | book3s_64_vio.c | 333 static long kvmppc_tce_to_ua(struct kvm *kvm, unsigned long tce, in kvmppc_tce_to_ua() argument 336 unsigned long gfn = tce >> PAGE_SHIFT; in kvmppc_tce_to_ua() 344 (tce & ~(PAGE_MASK | TCE_PCI_READ | TCE_PCI_WRITE)); in kvmppc_tce_to_ua() 350 unsigned long tce) in kvmppc_tce_validate() argument 352 unsigned long gpa = tce & ~(TCE_PCI_READ | TCE_PCI_WRITE); in kvmppc_tce_validate() 353 enum dma_data_direction dir = iommu_tce_direction(tce); in kvmppc_tce_validate() 364 if (kvmppc_tce_to_ua(stt->kvm, tce, &ua)) in kvmppc_tce_validate() 389 unsigned long idx, unsigned long tce) in kvmppc_tce_put() argument 401 if (!tce) in kvmppc_tce_put() 410 tbl[idx % TCES_PER_PAGE] = tce; in kvmppc_tce_put() [all …]
|
| D | book3s_64_vio_hv.c | 78 static long kvmppc_rm_tce_to_ua(struct kvm *kvm, unsigned long tce, in kvmppc_rm_tce_to_ua() argument 81 unsigned long gfn = tce >> PAGE_SHIFT; in kvmppc_rm_tce_to_ua() 89 (tce & ~(PAGE_MASK | TCE_PCI_READ | TCE_PCI_WRITE)); in kvmppc_rm_tce_to_ua() 106 unsigned long tce) in kvmppc_rm_tce_validate() argument 108 unsigned long gpa = tce & ~(TCE_PCI_READ | TCE_PCI_WRITE); in kvmppc_rm_tce_validate() 109 enum dma_data_direction dir = iommu_tce_direction(tce); in kvmppc_rm_tce_validate() 120 if (kvmppc_rm_tce_to_ua(stt->kvm, tce, &ua, NULL)) in kvmppc_rm_tce_validate() 172 unsigned long idx, unsigned long tce) in kvmppc_rm_tce_put() argument 186 tbl[idx % TCES_PER_PAGE] = tce; in kvmppc_rm_tce_put() 387 unsigned long ioba, unsigned long tce) in kvmppc_rm_h_put_tce() argument [all …]
|
| D | book3s_pr_papr.c | 289 unsigned long tce = kvmppc_get_gpr(vcpu, 6); in kvmppc_h_pr_put_tce() local 292 rc = kvmppc_h_put_tce(vcpu, liobn, ioba, tce); in kvmppc_h_pr_put_tce() 303 unsigned long tce = kvmppc_get_gpr(vcpu, 6); in kvmppc_h_pr_put_tce_indirect() local 308 tce, npages); in kvmppc_h_pr_put_tce_indirect()
|
| /Linux-v5.4/drivers/vfio/ |
| D | vfio_iommu_spapr_tce.c | 390 unsigned long tce, unsigned long shift, in tce_iommu_prereg_ua_to_hpa() argument 396 mem = mm_iommu_lookup(container->mm, tce, 1ULL << shift); in tce_iommu_prereg_ua_to_hpa() 400 ret = mm_iommu_ua_to_hpa(mem, tce, shift, phpa); in tce_iommu_prereg_ua_to_hpa() 484 static int tce_iommu_use_page(unsigned long tce, unsigned long *hpa) in tce_iommu_use_page() argument 487 enum dma_data_direction direction = iommu_tce_direction(tce); in tce_iommu_use_page() 489 if (get_user_pages_fast(tce & PAGE_MASK, 1, in tce_iommu_use_page() 501 unsigned long entry, unsigned long tce, unsigned long pages, in tce_iommu_build() argument 509 unsigned long offset = tce & IOMMU_PAGE_MASK(tbl) & ~PAGE_MASK; in tce_iommu_build() 511 ret = tce_iommu_use_page(tce, &hpa); in tce_iommu_build() 529 tce, ret); in tce_iommu_build() [all …]
|
| /Linux-v5.4/arch/powerpc/platforms/powernv/ |
| D | pci-ioda-tce.c | 64 unsigned long oldtce, tce = be64_to_cpu(READ_ONCE(tmp[n])); in pnv_tce() local 66 if (!tce) { in pnv_tce() 77 tce = __pa(tmp2) | TCE_PCI_READ | TCE_PCI_WRITE; in pnv_tce() 79 cpu_to_be64(tce))); in pnv_tce() 83 tce = oldtce; in pnv_tce() 87 tmp = __va(tce & ~(TCE_PCI_READ | TCE_PCI_WRITE)); in pnv_tce()
|
| D | Makefile | 13 obj-$(CONFIG_PCI) += pci.o pci-ioda.o npu-dma.o pci-ioda-tce.o
|
| /Linux-v5.4/arch/powerpc/platforms/pseries/ |
| D | iommu.c | 145 u64 proto_tce, tce; in tce_build_pSeriesLP() local 156 tce = proto_tce | (rpn & TCE_RPN_MASK) << TCE_RPN_SHIFT; in tce_build_pSeriesLP() 157 rc = plpar_tce_put((u64)tbl->it_index, (u64)tcenum << 12, tce); in tce_build_pSeriesLP() 170 printk("\ttce val = 0x%llx\n", tce ); in tce_build_pSeriesLP() 625 long *tce, enum dma_data_direction *direction, in tce_exchange_pseries() argument 632 unsigned long newtce = *tce | proto_tce; in tce_exchange_pseries() 642 *tce = oldtce & ~(TCE_PCI_READ | TCE_PCI_WRITE); in tce_exchange_pseries()
|
| /Linux-v5.4/arch/powerpc/kernel/ |
| D | iommu.c | 961 enum dma_data_direction iommu_tce_direction(unsigned long tce) in iommu_tce_direction() argument 963 if ((tce & TCE_PCI_READ) && (tce & TCE_PCI_WRITE)) in iommu_tce_direction() 965 else if (tce & TCE_PCI_READ) in iommu_tce_direction() 967 else if (tce & TCE_PCI_WRITE) in iommu_tce_direction()
|
| /Linux-v5.4/arch/powerpc/include/asm/ |
| D | iommu.h | 316 extern enum dma_data_direction iommu_tce_direction(unsigned long tce);
|
| D | kvm_ppc.h | 190 unsigned long ioba, unsigned long tce); 754 unsigned long ioba, unsigned long tce);
|
| /Linux-v5.4/drivers/net/ethernet/broadcom/ |
| D | cnic_defs.h | 3311 struct ustorm_fcoe_tce tce; member 3602 struct xstorm_fcoe_tce tce; member
|
| /Linux-v5.4/Documentation/virt/kvm/ |
| D | api.txt | 3315 IBM pSeries (sPAPR) guest starts using them if "hcall-multi-tce" is
|
| /Linux-v5.4/ |
| D | MAINTAINERS | 3637 F: arch/x86/include/asm/tce.h
|