diff --git a/drivers/iommu/io-pgtable-arm.c b/drivers/iommu/io-pgtable-arm.c
index e8018a308868..3ef96c2957ad 100644
--- a/drivers/iommu/io-pgtable-arm.c
+++ b/drivers/iommu/io-pgtable-arm.c
@@ -14,6 +14,7 @@
* along with this program. If not, see .
*
* Copyright (C) 2014 ARM Limited
+ * Copyright 2017 NXP
*
* Author: Will Deacon
*/
@@ -215,7 +216,7 @@ static void *__arm_lpae_alloc_pages(size_t size, gfp_t gfp,
{
struct device *dev = cfg->iommu_dev;
dma_addr_t dma;
- void *pages = alloc_pages_exact(size, gfp | __GFP_ZERO);
+ void *pages = alloc_pages_exact(size, gfp | __GFP_ZERO | __GFP_DMA);
if (!pages)
return NULL;