| From cecfc76f8f5e54e14e51ff99f649acdf75a0056e Mon Sep 17 00:00:00 2001 |
| From: Magnus Damm <damm+renesas@opensource.se> |
| Date: Mon, 16 Oct 2017 21:30:07 +0900 |
| Subject: [PATCH 0103/1795] iommu/ipmmu-vmsa: IPMMU device is 40-bit bus master |
| |
| The r8a7795 IPMMU supports 40-bit bus mastering. Both |
| the coherent DMA mask and the streaming DMA mask are |
| set to unlock the 40-bit address space for coherent |
| allocations and streaming operations. |
| |
| Signed-off-by: Magnus Damm <damm+renesas@opensource.se> |
| Signed-off-by: Alex Williamson <alex.williamson@redhat.com> |
| (cherry picked from commit 1c894225bf5b1cdffac0c6ef935b61273203d7d5) |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> |
| --- |
| drivers/iommu/ipmmu-vmsa.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| diff --git a/drivers/iommu/ipmmu-vmsa.c b/drivers/iommu/ipmmu-vmsa.c |
| index 9cde61970bb5..6b74ec62f4b4 100644 |
| --- a/drivers/iommu/ipmmu-vmsa.c |
| +++ b/drivers/iommu/ipmmu-vmsa.c |
| @@ -903,6 +903,7 @@ static int ipmmu_probe(struct platform_device *pdev) |
| spin_lock_init(&mmu->lock); |
| bitmap_zero(mmu->ctx, IPMMU_CTX_MAX); |
| mmu->features = of_device_get_match_data(&pdev->dev); |
| + dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(40)); |
| |
| /* Map I/O memory and request IRQ. */ |
| res = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
| -- |
| 2.19.0 |
| |