Searched refs:it_page_shift (Results 1 – 13 of 13) sorted by relevance
/linux/arch/powerpc/include/asm/ |
A D | iommu.h | 27 #define IOMMU_PAGE_SIZE(tblptr) (ASM_CONST(1) << (tblptr)->it_page_shift) 28 #define IOMMU_PAGE_MASK(tblptr) (~((1 << (tblptr)->it_page_shift) - 1)) 109 unsigned long it_page_shift;/* table iommu page size */ member 128 return __ilog2((size - 1) >> tbl->it_page_shift) + 1; in get_iommu_order() 298 (iommu_tce_check_ioba((tbl)->it_page_shift, \ 302 (iommu_tce_check_ioba((tbl)->it_page_shift, \ 305 iommu_tce_check_gpa((tbl)->it_page_shift, (gpa)))
|
/linux/arch/powerpc/kernel/ |
A D | iommu.c | 384 entry = dma_addr >> tbl->it_page_shift; in iommu_free_check() 433 entry = dma_addr >> tbl->it_page_shift; in __iommu_free() 504 align = PAGE_SHIFT - tbl->it_page_shift; in ppc_iommu_map_sg() 506 mask >> tbl->it_page_shift, align); in ppc_iommu_map_sg() 522 dma_addr = entry << tbl->it_page_shift; in ppc_iommu_map_sg() 858 align = PAGE_SHIFT - tbl->it_page_shift; in iommu_map_page() 861 mask >> tbl->it_page_shift, align, in iommu_map_page() 931 nio_pages = size >> tbl->it_page_shift; in iommu_alloc_coherent() 934 mask >> tbl->it_page_shift, io_order, 0); in iommu_alloc_coherent() 950 nio_pages = size >> tbl->it_page_shift; in iommu_free_coherent() [all …]
|
A D | dma-iommu.c | 170 if (tbl->it_offset > (mask >> tbl->it_page_shift)) { in dma_iommu_dma_supported() 173 mask, tbl->it_offset << tbl->it_page_shift); in dma_iommu_dma_supported() 200 tbl->it_page_shift - 1); in dma_iommu_get_required_mask()
|
/linux/drivers/vfio/ |
A D | vfio_iommu_spapr_tce.c | 180 unsigned int it_page_shift) in tce_page_is_contained() argument 186 return size == (1UL << it_page_shift); in tce_page_is_contained() 422 tbl->it_page_shift, &hpa, &mem); in tce_iommu_unuse_page_v2() 517 tbl->it_page_shift)) { in tce_iommu_build() 567 tbl->it_page_shift)) { in tce_iommu_build_v2() 908 param.iova >> tbl->it_page_shift, in tce_iommu_ioctl() 910 param.size >> tbl->it_page_shift, in tce_iommu_ioctl() 914 param.iova >> tbl->it_page_shift, in tce_iommu_ioctl() 916 param.size >> tbl->it_page_shift, in tce_iommu_ioctl() 956 param.size >> tbl->it_page_shift); in tce_iommu_ioctl() [all …]
|
/linux/arch/powerpc/kvm/ |
A D | book3s_64_vio.c | 135 if ((tbltmp->it_page_shift <= stt->page_shift) && in kvm_spapr_tce_attach_iommu_group() 136 (tbltmp->it_offset << tbltmp->it_page_shift == in kvm_spapr_tce_attach_iommu_group() 138 (tbltmp->it_size << tbltmp->it_page_shift >= in kvm_spapr_tce_attach_iommu_group() 380 long shift = stit->tbl->it_page_shift; in kvmppc_tce_validate() 436 const unsigned long pgsize = 1ULL << tbl->it_page_shift; in kvmppc_tce_iommu_mapped_dec() 479 unsigned long subpages = 1ULL << (stt->page_shift - tbl->it_page_shift); in kvmppc_tce_iommu_unmap() 504 mem = mm_iommu_lookup(kvm->mm, ua, 1ULL << tbl->it_page_shift); in kvmppc_tce_iommu_do_map() 509 if (WARN_ON_ONCE(mm_iommu_ua_to_hpa(mem, ua, tbl->it_page_shift, &hpa))) in kvmppc_tce_iommu_do_map() 535 unsigned long subpages = 1ULL << (stt->page_shift - tbl->it_page_shift); in kvmppc_tce_iommu_map()
|
A D | book3s_64_vio_hv.c | 122 long shift = stit->tbl->it_page_shift; in kvmppc_rm_tce_validate() 263 const unsigned long pgsize = 1ULL << tbl->it_page_shift; in kvmppc_rm_tce_iommu_mapped_dec() 310 unsigned long subpages = 1ULL << (stt->page_shift - tbl->it_page_shift); in kvmppc_rm_tce_iommu_unmap() 335 mem = mm_iommu_lookup_rm(kvm->mm, ua, 1ULL << tbl->it_page_shift); in kvmppc_rm_tce_iommu_do_map() 339 if (WARN_ON_ONCE_RM(mm_iommu_ua_to_hpa_rm(mem, ua, tbl->it_page_shift, in kvmppc_rm_tce_iommu_do_map() 370 unsigned long subpages = 1ULL << (stt->page_shift - tbl->it_page_shift); in kvmppc_rm_tce_iommu_map()
|
/linux/arch/powerpc/platforms/powernv/ |
A D | pci-ioda-tce.c | 54 tbl->it_page_shift = page_shift; in pnv_pci_setup_iommu_table() 55 tbl->it_offset = dma_offset >> tbl->it_page_shift; in pnv_pci_setup_iommu_table() 129 u64 rpn = __pa(uaddr) >> tbl->it_page_shift; in pnv_tce_build() 137 ((rpn + i) << tbl->it_page_shift); in pnv_tce_build()
|
A D | pci-ioda.c | 1418 unsigned int shift = tbl->it_page_shift; in pnv_pci_ioda2_tce_invalidate() 1619 pe->table_group.tce32_start = tbl->it_offset << tbl->it_page_shift; in pnv_pci_ioda1_setup_dma_pe() 1620 pe->table_group.tce32_size = tbl->it_size << tbl->it_page_shift; in pnv_pci_ioda1_setup_dma_pe() 1645 const __u64 start_addr = tbl->it_offset << tbl->it_page_shift; in pnv_pci_ioda2_set_window() 1646 const __u64 win_size = tbl->it_size << tbl->it_page_shift; in pnv_pci_ioda2_set_window() 1787 res_start = pe->phb->ioda.m32_pci_base >> tbl->it_page_shift; in pnv_pci_ioda2_setup_default_config() 1788 res_end = min(window_size, SZ_4G) >> tbl->it_page_shift; in pnv_pci_ioda2_setup_default_config()
|
/linux/arch/powerpc/platforms/pasemi/ |
A D | iommu.c | 135 iommu_table_iobmap.it_page_shift = IOBMAP_PAGE_SHIFT; in iommu_table_iobmap_setup() 139 0x80000000 >> iommu_table_iobmap.it_page_shift; in iommu_table_iobmap_setup()
|
/linux/arch/powerpc/platforms/pseries/ |
A D | iommu.c | 113 const unsigned long tceshift = tbl->it_page_shift; in tce_build_pSeries() 213 const unsigned long tceshift = tbl->it_page_shift; in tce_buildmulti_pSeriesLP() 312 tbl->it_page_shift, npages); in tce_freemulti_pSeriesLP() 315 (u64)tcenum << tbl->it_page_shift, 0, npages); in tce_freemulti_pSeriesLP() 332 (u64)tcenum << tbl->it_page_shift, &tce_ret); in tce_get_pSeriesLP() 514 tbl->it_page_shift = page_shift; in iommu_table_setparms_common() 673 unsigned long ioba = (unsigned long) index << tbl->it_page_shift; in tce_exchange_pseries()
|
A D | vio.c | 1190 tbl->it_page_shift = IOMMU_PAGE_SHIFT_4K; in vio_build_iommu_table() 1191 tbl->it_size = size >> tbl->it_page_shift; in vio_build_iommu_table() 1193 tbl->it_offset = offset >> tbl->it_page_shift; in vio_build_iommu_table()
|
/linux/arch/powerpc/platforms/cell/ |
A D | iommu.c | 188 for (i = 0; i < npages; i++, uaddr += (1 << tbl->it_page_shift)) in tce_build_cell() 483 window->table.it_page_shift = IOMMU_PAGE_SHIFT_4K; in cell_iommu_setup_window() 485 (offset >> window->table.it_page_shift) + pte_offset; in cell_iommu_setup_window() 486 window->table.it_size = size >> window->table.it_page_shift; in cell_iommu_setup_window()
|
/linux/arch/powerpc/sysdev/ |
A D | dart_iommu.c | 340 iommu_table_dart.it_page_shift = IOMMU_PAGE_SHIFT_4K; in iommu_table_dart_setup()
|
Completed in 30 milliseconds