summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/marvell/mvmdio.c
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@armlinux.org.uk>2017-04-10 16:28:04 +0100
committerDavid S. Miller <davem@davemloft.net>2017-04-13 10:59:11 -0400
commit37282485dd4c95c4a637cfa263a0753216f1ec24 (patch)
treea16c1466fcc0f22478754a77a269b8d1a50cf781 /drivers/net/ethernet/marvell/mvmdio.c
parentd92be7a41ef15463eb816a4a2d42bf094b56dfce (diff)
downloadop-kernel-dev-37282485dd4c95c4a637cfa263a0753216f1ec24.zip
op-kernel-dev-37282485dd4c95c4a637cfa263a0753216f1ec24.tar.gz
net: mvmdio: disable interrupts in driver failure path
When the mvmdio driver has an interrupt, it enables the "done" interrupt after requesting its interrupt handler. However, probe failure results in the interrupt being left enabled. Disable it on the failure path. Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/marvell/mvmdio.c')
-rw-r--r--drivers/net/ethernet/marvell/mvmdio.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/marvell/mvmdio.c b/drivers/net/ethernet/marvell/mvmdio.c
index a0d1b08..7aea0be 100644
--- a/drivers/net/ethernet/marvell/mvmdio.c
+++ b/drivers/net/ethernet/marvell/mvmdio.c
@@ -251,6 +251,8 @@ static int orion_mdio_probe(struct platform_device *pdev)
return 0;
out_mdio:
+ if (dev->err_interrupt > 0)
+ writel(0, dev->regs + MVMDIO_ERR_INT_MASK);
if (!IS_ERR(dev->clk))
clk_disable_unprepare(dev->clk);
return ret;
OpenPOWER on IntegriCloud