aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorReece R. Pollack2015-02-09 16:21:08 -0600
committerReece R. Pollack2015-02-16 16:30:34 -0600
commit760a81522f9b37745a9fde6afd21a727c8f3cbbd (patch)
tree041a733740f8bca4fdfa7bcc7fd557079da806de
parentef81aae96229138c4babefd7b0a0743d25b83ab5 (diff)
downloadlinux-760a81522f9b37745a9fde6afd21a727c8f3cbbd.tar.gz
linux-760a81522f9b37745a9fde6afd21a727c8f3cbbd.tar.xz
linux-760a81522f9b37745a9fde6afd21a727c8f3cbbd.zip
net: keystone: Remove erroneous dmaengine_pause calls in PA shutdown
This patch removes erroneous calls to dmaengine_pause() in the NetCP PA shutdown sequence. This function should be called to stop DMA completion notifications that would trigger later dma_poll() calls from a softIRQ or tasklet. If the interrupt is to be serviced from the notifier routine, then we should not be pausing the channel even if we're shutting it down. Signed-off-by: Reece R. Pollack <x0183204@ti.com>
-rw-r--r--drivers/net/ethernet/ti/keystone_pa.c2
-rw-r--r--drivers/net/ethernet/ti/keystone_pa2.c1
2 files changed, 0 insertions, 3 deletions
diff --git a/drivers/net/ethernet/ti/keystone_pa.c b/drivers/net/ethernet/ti/keystone_pa.c
index e208250574b..5b4875f3e78 100644
--- a/drivers/net/ethernet/ti/keystone_pa.c
+++ b/drivers/net/ethernet/ti/keystone_pa.c
@@ -2070,12 +2070,10 @@ static int pa_close(void *intf_priv, struct net_device *ndev)
2070 } 2070 }
2071 2071
2072 if (pa_dev->pdsp1_tx_channel) { 2072 if (pa_dev->pdsp1_tx_channel) {
2073 dmaengine_pause(pa_dev->pdsp1_tx_channel);
2074 dma_release_channel(pa_dev->pdsp1_tx_channel); 2073 dma_release_channel(pa_dev->pdsp1_tx_channel);
2075 pa_dev->pdsp1_tx_channel = NULL; 2074 pa_dev->pdsp1_tx_channel = NULL;
2076 } 2075 }
2077 if (pa_dev->pdsp0_tx_channel) { 2076 if (pa_dev->pdsp0_tx_channel) {
2078 dmaengine_pause(pa_dev->pdsp0_tx_channel);
2079 dma_release_channel(pa_dev->pdsp0_tx_channel); 2077 dma_release_channel(pa_dev->pdsp0_tx_channel);
2080 pa_dev->pdsp0_tx_channel = NULL; 2078 pa_dev->pdsp0_tx_channel = NULL;
2081 } 2079 }
diff --git a/drivers/net/ethernet/ti/keystone_pa2.c b/drivers/net/ethernet/ti/keystone_pa2.c
index aa9ac5ec2c0..caca6ff3006 100644
--- a/drivers/net/ethernet/ti/keystone_pa2.c
+++ b/drivers/net/ethernet/ti/keystone_pa2.c
@@ -2394,7 +2394,6 @@ static int pa2_close(void *intf_priv, struct net_device *ndev)
2394 */ 2394 */
2395 2395
2396 if (pa_dev->pdsp0_tx_channel) { 2396 if (pa_dev->pdsp0_tx_channel) {
2397 dmaengine_pause(pa_dev->pdsp0_tx_channel);
2398 dma_release_channel(pa_dev->pdsp0_tx_channel); 2397 dma_release_channel(pa_dev->pdsp0_tx_channel);
2399 pa_dev->pdsp0_tx_channel = NULL; 2398 pa_dev->pdsp0_tx_channel = NULL;
2400 } 2399 }