diff mbox series

[net-next] net: systemport: Set correct DMA mask

Message ID 20191218002950.2125-1-f.fainelli@gmail.com
State Accepted
Delegated to: David Miller
Headers show
Series [net-next] net: systemport: Set correct DMA mask | expand

Commit Message

Florian Fainelli Dec. 18, 2019, 12:29 a.m. UTC
SYSTEMPORT is capabable of doing up to 40-bit of physical addresses, set
an appropriate DMA mask to permit that.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
---
 drivers/net/ethernet/broadcom/bcmsysport.c | 8 ++++++++
 1 file changed, 8 insertions(+)

Comments

David Miller Dec. 20, 2019, 2:10 a.m. UTC | #1
From: Florian Fainelli <f.fainelli@gmail.com>
Date: Tue, 17 Dec 2019 16:29:50 -0800

> SYSTEMPORT is capabable of doing up to 40-bit of physical addresses, set
> an appropriate DMA mask to permit that.
> 
> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>

Applied, thanks Florian.
diff mbox series

Patch

diff --git a/drivers/net/ethernet/broadcom/bcmsysport.c b/drivers/net/ethernet/broadcom/bcmsysport.c
index 8e3152779a61..1907e47fd0af 100644
--- a/drivers/net/ethernet/broadcom/bcmsysport.c
+++ b/drivers/net/ethernet/broadcom/bcmsysport.c
@@ -2427,6 +2427,14 @@  static int bcm_sysport_probe(struct platform_device *pdev)
 	if (!of_id || !of_id->data)
 		return -EINVAL;
 
+	ret = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(40));
+	if (ret)
+		ret = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(32));
+	if (ret) {
+		dev_err(&pdev->dev, "unable to set DMA mask: %d\n", ret);
+		return ret;
+	}
+
 	/* Fairly quickly we need to know the type of adapter we have */
 	params = of_id->data;