aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2017-06-14 04:33:48 -0400
committerChristoph Hellwig <hch@lst.de>2017-08-29 04:03:45 -0400
commit7f683b920479530150cafbed9dc02eeafb90486b (patch)
tree3c8880c9def0428b0fef825ed33daa6d49d4aaa2
parentae9f608f07e7828801430a00f67882fc386b33d5 (diff)
i825xx: switch to switch to dma_alloc_attrs
This way we can always pass DMA_ATTR_NON_CONSISTENT, the SNI mips version will simply ignore the flag. Signed-off-by: Christoph Hellwig <hch@lst.de> Acked-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/i825xx/lasi_82596.c6
-rw-r--r--drivers/net/ethernet/i825xx/lib82596.c9
-rw-r--r--drivers/net/ethernet/i825xx/sni_82596.c6
3 files changed, 9 insertions, 12 deletions
diff --git a/drivers/net/ethernet/i825xx/lasi_82596.c b/drivers/net/ethernet/i825xx/lasi_82596.c
index d787fdd5db7b..d5b5021aa759 100644
--- a/drivers/net/ethernet/i825xx/lasi_82596.c
+++ b/drivers/net/ethernet/i825xx/lasi_82596.c
@@ -96,8 +96,6 @@
96 96
97#define OPT_SWAP_PORT 0x0001 /* Need to wordswp on the MPU port */ 97#define OPT_SWAP_PORT 0x0001 /* Need to wordswp on the MPU port */
98 98
99#define DMA_ALLOC dma_alloc_noncoherent
100#define DMA_FREE dma_free_noncoherent
101#define DMA_WBACK(ndev, addr, len) \ 99#define DMA_WBACK(ndev, addr, len) \
102 do { dma_cache_sync((ndev)->dev.parent, (void *)addr, len, DMA_TO_DEVICE); } while (0) 100 do { dma_cache_sync((ndev)->dev.parent, (void *)addr, len, DMA_TO_DEVICE); } while (0)
103 101
@@ -200,8 +198,8 @@ static int lan_remove_chip(struct parisc_device *pdev)
200 struct i596_private *lp = netdev_priv(dev); 198 struct i596_private *lp = netdev_priv(dev);
201 199
202 unregister_netdev (dev); 200 unregister_netdev (dev);
203 DMA_FREE(&pdev->dev, sizeof(struct i596_private), 201 dma_free_attrs(&pdev->dev, sizeof(struct i596_private), lp->dma,
204 (void *)lp->dma, lp->dma_addr); 202 lp->dma_addr, DMA_ATTR_NON_CONSISTENT);
205 free_netdev (dev); 203 free_netdev (dev);
206 return 0; 204 return 0;
207} 205}
diff --git a/drivers/net/ethernet/i825xx/lib82596.c b/drivers/net/ethernet/i825xx/lib82596.c
index 8449c58f01fd..f00a1dc2128c 100644
--- a/drivers/net/ethernet/i825xx/lib82596.c
+++ b/drivers/net/ethernet/i825xx/lib82596.c
@@ -1063,8 +1063,9 @@ static int i82596_probe(struct net_device *dev)
1063 if (!dev->base_addr || !dev->irq) 1063 if (!dev->base_addr || !dev->irq)
1064 return -ENODEV; 1064 return -ENODEV;
1065 1065
1066 dma = (struct i596_dma *) DMA_ALLOC(dev->dev.parent, 1066 dma = dma_alloc_attrs(dev->dev.parent, sizeof(struct i596_dma),
1067 sizeof(struct i596_dma), &lp->dma_addr, GFP_KERNEL); 1067 &lp->dma_addr, GFP_KERNEL,
1068 DMA_ATTR_NON_CONSISTENT);
1068 if (!dma) { 1069 if (!dma) {
1069 printk(KERN_ERR "%s: Couldn't get shared memory\n", __FILE__); 1070 printk(KERN_ERR "%s: Couldn't get shared memory\n", __FILE__);
1070 return -ENOMEM; 1071 return -ENOMEM;
@@ -1085,8 +1086,8 @@ static int i82596_probe(struct net_device *dev)
1085 1086
1086 i = register_netdev(dev); 1087 i = register_netdev(dev);
1087 if (i) { 1088 if (i) {
1088 DMA_FREE(dev->dev.parent, sizeof(struct i596_dma), 1089 dma_free_attrs(dev->dev.parent, sizeof(struct i596_dma),
1089 (void *)dma, lp->dma_addr); 1090 dma, lp->dma_addr, DMA_ATTR_NON_CONSISTENT);
1090 return i; 1091 return i;
1091 } 1092 }
1092 1093
diff --git a/drivers/net/ethernet/i825xx/sni_82596.c b/drivers/net/ethernet/i825xx/sni_82596.c
index 2af7f77345fb..b2c04a789744 100644
--- a/drivers/net/ethernet/i825xx/sni_82596.c
+++ b/drivers/net/ethernet/i825xx/sni_82596.c
@@ -23,8 +23,6 @@
23 23
24static const char sni_82596_string[] = "snirm_82596"; 24static const char sni_82596_string[] = "snirm_82596";
25 25
26#define DMA_ALLOC dma_alloc_coherent
27#define DMA_FREE dma_free_coherent
28#define DMA_WBACK(priv, addr, len) do { } while (0) 26#define DMA_WBACK(priv, addr, len) do { } while (0)
29#define DMA_INV(priv, addr, len) do { } while (0) 27#define DMA_INV(priv, addr, len) do { } while (0)
30#define DMA_WBACK_INV(priv, addr, len) do { } while (0) 28#define DMA_WBACK_INV(priv, addr, len) do { } while (0)
@@ -152,8 +150,8 @@ static int sni_82596_driver_remove(struct platform_device *pdev)
152 struct i596_private *lp = netdev_priv(dev); 150 struct i596_private *lp = netdev_priv(dev);
153 151
154 unregister_netdev(dev); 152 unregister_netdev(dev);
155 DMA_FREE(dev->dev.parent, sizeof(struct i596_private), 153 dma_free_attrs(dev->dev.parent, sizeof(struct i596_private), lp->dma,
156 lp->dma, lp->dma_addr); 154 lp->dma_addr, DMA_ATTR_NON_CONSISTENT);
157 iounmap(lp->ca); 155 iounmap(lp->ca);
158 iounmap(lp->mpu_port); 156 iounmap(lp->mpu_port);
159 free_netdev (dev); 157 free_netdev (dev);