summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/nxp
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2013-06-27 14:03:13 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2013-10-31 14:48:56 +0000
commitb469357f4ba28bd8d659106143fb1f6b3c64d5df (patch)
treebb9cac70fff30c31b6731e1bad411697b886b959 /drivers/net/ethernet/nxp
parent07f4450c9961b2980dd6485875a374923f0ccb63 (diff)
downloadlwn-b469357f4ba28bd8d659106143fb1f6b3c64d5df.tar.gz
lwn-b469357f4ba28bd8d659106143fb1f6b3c64d5df.zip
DMA-API: net: nxp/lpc_eth: use dma_coerce_mask_and_coherent()
The code sequence: pldat->pdev->dev.coherent_dma_mask = 0xFFFFFFFF; pldat->pdev->dev.dma_mask = &pldat->pdev->dev.coherent_dma_mask; bypasses the architectures check on the DMA mask. It can be replaced with dma_coerce_mask_and_coherent(), avoiding the direct initialization of this mask. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'drivers/net/ethernet/nxp')
-rw-r--r--drivers/net/ethernet/nxp/lpc_eth.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/ethernet/nxp/lpc_eth.c b/drivers/net/ethernet/nxp/lpc_eth.c
index a061b93efe66..ba3ca18611f7 100644
--- a/drivers/net/ethernet/nxp/lpc_eth.c
+++ b/drivers/net/ethernet/nxp/lpc_eth.c
@@ -1399,8 +1399,10 @@ static int lpc_eth_drv_probe(struct platform_device *pdev)
}
if (pldat->dma_buff_base_v == 0) {
- pldat->pdev->dev.coherent_dma_mask = 0xFFFFFFFF;
- pldat->pdev->dev.dma_mask = &pldat->pdev->dev.coherent_dma_mask;
+ ret = dma_coerce_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
+ if (ret)
+ goto err_out_free_irq;
+
pldat->dma_buff_size = PAGE_ALIGN(pldat->dma_buff_size);
/* Allocate a chunk of memory for the DMA ethernet buffers