Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 69be1f4e authored by Archit Taneja's avatar Archit Taneja Committed by Rob Clark
Browse files

drm/msm: Use correct type for physical addresses



The u32 type used to pass the physical addresses to iommu_map can't
accommodate 64 bit addresses. Move to dma_addr_t to ensure wrong
addresses aren't provided to the IOMMU driver.

Signed-off-by: default avatarArchit Taneja <architt@codeaurora.org>
Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
parent 2d635fde
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -59,10 +59,10 @@ static int msm_iommu_map(struct msm_mmu *mmu, uint32_t iova,
		return -EINVAL;

	for_each_sg(sgt->sgl, sg, sgt->nents, i) {
		u32 pa = sg_phys(sg) - sg->offset;
		dma_addr_t pa = sg_phys(sg) - sg->offset;
		size_t bytes = sg->length + sg->offset;

		VERB("map[%d]: %08x %08x(%zx)", i, iova, pa, bytes);
		VERB("map[%d]: %08x %08lx(%zx)", i, iova, (unsigned long)pa, bytes);

		ret = iommu_map(domain, da, pa, bytes, prot);
		if (ret)