@@ -471,14 +471,16 @@ static void msm_iommu_detach_dev(struct iommu_domain *domain,
471
471
}
472
472
473
473
static int msm_iommu_map (struct iommu_domain * domain , unsigned long iova ,
474
- phys_addr_t pa , size_t len , int prot , gfp_t gfp )
474
+ phys_addr_t pa , size_t pgsize , size_t pgcount ,
475
+ int prot , gfp_t gfp , size_t * mapped )
475
476
{
476
477
struct msm_priv * priv = to_msm_priv (domain );
477
478
unsigned long flags ;
478
479
int ret ;
479
480
480
481
spin_lock_irqsave (& priv -> pgtlock , flags );
481
- ret = priv -> iop -> map (priv -> iop , iova , pa , len , prot , GFP_ATOMIC );
482
+ ret = priv -> iop -> map_pages (priv -> iop , iova , pa , pgsize , pgcount , prot ,
483
+ GFP_ATOMIC , mapped );
482
484
spin_unlock_irqrestore (& priv -> pgtlock , flags );
483
485
484
486
return ret ;
@@ -493,16 +495,18 @@ static void msm_iommu_sync_map(struct iommu_domain *domain, unsigned long iova,
493
495
}
494
496
495
497
static size_t msm_iommu_unmap (struct iommu_domain * domain , unsigned long iova ,
496
- size_t len , struct iommu_iotlb_gather * gather )
498
+ size_t pgsize , size_t pgcount ,
499
+ struct iommu_iotlb_gather * gather )
497
500
{
498
501
struct msm_priv * priv = to_msm_priv (domain );
499
502
unsigned long flags ;
503
+ size_t ret ;
500
504
501
505
spin_lock_irqsave (& priv -> pgtlock , flags );
502
- len = priv -> iop -> unmap (priv -> iop , iova , len , gather );
506
+ ret = priv -> iop -> unmap_pages (priv -> iop , iova , pgsize , pgcount , gather );
503
507
spin_unlock_irqrestore (& priv -> pgtlock , flags );
504
508
505
- return len ;
509
+ return ret ;
506
510
}
507
511
508
512
static phys_addr_t msm_iommu_iova_to_phys (struct iommu_domain * domain ,
@@ -679,8 +683,8 @@ static struct iommu_ops msm_iommu_ops = {
679
683
.default_domain_ops = & (const struct iommu_domain_ops ) {
680
684
.attach_dev = msm_iommu_attach_dev ,
681
685
.detach_dev = msm_iommu_detach_dev ,
682
- .map = msm_iommu_map ,
683
- .unmap = msm_iommu_unmap ,
686
+ .map_pages = msm_iommu_map ,
687
+ .unmap_pages = msm_iommu_unmap ,
684
688
/*
685
689
* Nothing is needed here, the barrier to guarantee
686
690
* completion of the tlb sync operation is implicitly
0 commit comments