/Linux-v4.19/arch/powerpc/kvm/ |
D | book3s_64_vio_hv.c | 101 long kvmppc_tce_validate(struct kvmppc_spapr_tce_table *stt, unsigned long tce) in kvmppc_tce_validate() argument 103 unsigned long gpa = tce & ~(TCE_PCI_READ | TCE_PCI_WRITE); in kvmppc_tce_validate() 104 enum dma_data_direction dir = iommu_tce_direction(tce); in kvmppc_tce_validate() 154 unsigned long idx, unsigned long tce) in kvmppc_tce_put() argument 163 tbl[idx % TCES_PER_PAGE] = tce; in kvmppc_tce_put() 348 unsigned long ioba, unsigned long tce) in kvmppc_rm_h_put_tce() argument 371 ret = kvmppc_tce_validate(stt, tce); in kvmppc_rm_h_put_tce() 375 dir = iommu_tce_direction(tce); in kvmppc_rm_h_put_tce() 377 tce & ~(TCE_PCI_READ | TCE_PCI_WRITE), &ua, NULL)) in kvmppc_rm_h_put_tce() 400 kvmppc_tce_put(stt, entry, tce); in kvmppc_rm_h_put_tce() [all …]
|
D | book3s_64_vio.c | 493 unsigned long ioba, unsigned long tce) in kvmppc_h_put_tce() argument 512 ret = kvmppc_tce_validate(stt, tce); in kvmppc_h_put_tce() 516 dir = iommu_tce_direction(tce); in kvmppc_h_put_tce() 521 tce & ~(TCE_PCI_READ | TCE_PCI_WRITE), &ua, NULL)) { in kvmppc_h_put_tce() 546 kvmppc_tce_put(stt, entry, tce); in kvmppc_h_put_tce() 563 u64 tce; in kvmppc_h_put_tce_indirect() local 593 if (get_user(tce, tces + i)) { in kvmppc_h_put_tce_indirect() 597 tce = be64_to_cpu(tce); in kvmppc_h_put_tce_indirect() 599 ret = kvmppc_tce_validate(stt, tce); in kvmppc_h_put_tce_indirect() 604 tce & ~(TCE_PCI_READ | TCE_PCI_WRITE), in kvmppc_h_put_tce_indirect() [all …]
|
D | book3s_pr_papr.c | 292 unsigned long tce = kvmppc_get_gpr(vcpu, 6); in kvmppc_h_pr_put_tce() local 295 rc = kvmppc_h_put_tce(vcpu, liobn, ioba, tce); in kvmppc_h_pr_put_tce() 306 unsigned long tce = kvmppc_get_gpr(vcpu, 6); in kvmppc_h_pr_put_tce_indirect() local 311 tce, npages); in kvmppc_h_pr_put_tce_indirect()
|
/Linux-v4.19/drivers/vfio/ |
D | vfio_iommu_spapr_tce.c | 422 unsigned long tce, unsigned long shift, in tce_iommu_prereg_ua_to_hpa() argument 428 mem = mm_iommu_lookup(container->mm, tce, 1ULL << shift); in tce_iommu_prereg_ua_to_hpa() 432 ret = mm_iommu_ua_to_hpa(mem, tce, shift, phpa); in tce_iommu_prereg_ua_to_hpa() 494 static int tce_iommu_use_page(unsigned long tce, unsigned long *hpa) in tce_iommu_use_page() argument 497 enum dma_data_direction direction = iommu_tce_direction(tce); in tce_iommu_use_page() 499 if (get_user_pages_fast(tce & PAGE_MASK, 1, in tce_iommu_use_page() 510 unsigned long entry, unsigned long tce, unsigned long pages, in tce_iommu_build() argument 519 unsigned long offset = tce & IOMMU_PAGE_MASK(tbl) & ~PAGE_MASK; in tce_iommu_build() 521 ret = tce_iommu_use_page(tce, &hpa); in tce_iommu_build() 538 tce, ret); in tce_iommu_build() [all …]
|
/Linux-v4.19/arch/powerpc/platforms/powernv/ |
D | pci-ioda-tce.c | 60 unsigned long tce; in pnv_tce() local 76 tce = be64_to_cpu(tmp[n]); in pnv_tce() 78 tmp = __va(tce & ~(TCE_PCI_READ | TCE_PCI_WRITE)); in pnv_tce()
|
D | Makefile | 9 obj-$(CONFIG_PCI) += pci.o pci-ioda.o npu-dma.o pci-ioda-tce.o
|
/Linux-v4.19/arch/powerpc/platforms/pseries/ |
D | iommu.c | 179 u64 proto_tce, tce; in tce_build_pSeriesLP() local 190 tce = proto_tce | (rpn & TCE_RPN_MASK) << TCE_RPN_SHIFT; in tce_build_pSeriesLP() 191 rc = plpar_tce_put((u64)tbl->it_index, (u64)tcenum << 12, tce); in tce_build_pSeriesLP() 204 printk("\ttce val = 0x%llx\n", tce ); in tce_build_pSeriesLP() 660 long *tce, enum dma_data_direction *direction) in tce_exchange_pseries() argument 666 unsigned long newtce = *tce | proto_tce; in tce_exchange_pseries() 676 *tce = oldtce & ~(TCE_PCI_READ | TCE_PCI_WRITE); in tce_exchange_pseries()
|
/Linux-v4.19/arch/powerpc/kernel/ |
D | iommu.c | 941 enum dma_data_direction iommu_tce_direction(unsigned long tce) in iommu_tce_direction() argument 943 if ((tce & TCE_PCI_READ) && (tce & TCE_PCI_WRITE)) in iommu_tce_direction() 945 else if (tce & TCE_PCI_READ) in iommu_tce_direction() 947 else if (tce & TCE_PCI_WRITE) in iommu_tce_direction()
|
/Linux-v4.19/arch/powerpc/include/asm/ |
D | kvm_ppc.h | 198 unsigned long tce); 202 unsigned long idx, unsigned long tce); 204 unsigned long ioba, unsigned long tce); 617 unsigned long ioba, unsigned long tce);
|
D | iommu.h | 325 extern enum dma_data_direction iommu_tce_direction(unsigned long tce);
|
/Linux-v4.19/drivers/net/ethernet/broadcom/ |
D | cnic_defs.h | 3311 struct ustorm_fcoe_tce tce; member 3602 struct xstorm_fcoe_tce tce; member
|
/Linux-v4.19/Documentation/virtual/kvm/ |
D | api.txt | 3070 IBM pSeries (sPAPR) guest starts using them if "hcall-multi-tce" is
|
/Linux-v4.19/ |
D | MAINTAINERS | 3285 F: arch/x86/include/asm/tce.h
|