summaryrefslogtreecommitdiff
path: root/drivers/dma/mv_xor.c
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2013-01-19 15:27:30 +0000
committerRussell King <rmk+kernel@arm.linux.org.uk>2013-01-19 15:27:30 +0000
commit210b1847b32951f52d19df229972399e5b987de2 (patch)
treebe6eeb3ba76b4f4331c98d5ba47aa233bea8f22d /drivers/dma/mv_xor.c
parent93d5bf073a1e01035be66dc41860b9ae9aa9ccfa (diff)
parentd01723479e6a6c70c83295f7847477a016d5e14a (diff)
downloadlinux-3.10-210b1847b32951f52d19df229972399e5b987de2.tar.gz
linux-3.10-210b1847b32951f52d19df229972399e5b987de2.tar.bz2
linux-3.10-210b1847b32951f52d19df229972399e5b987de2.zip
Merge branch 'for-rmk/virt/hyp-boot/fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux into fixes
Diffstat (limited to 'drivers/dma/mv_xor.c')
-rw-r--r--drivers/dma/mv_xor.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/dma/mv_xor.c b/drivers/dma/mv_xor.c
index ac71f555dd7..e17fad03cb8 100644
--- a/drivers/dma/mv_xor.c
+++ b/drivers/dma/mv_xor.c
@@ -1361,13 +1361,16 @@ static int mv_xor_probe(struct platform_device *pdev)
err_channel_add:
for (i = 0; i < MV_XOR_MAX_CHANNELS; i++)
if (xordev->channels[i]) {
+ mv_xor_channel_remove(xordev->channels[i]);
if (pdev->dev.of_node)
irq_dispose_mapping(xordev->channels[i]->irq);
- mv_xor_channel_remove(xordev->channels[i]);
}
- clk_disable_unprepare(xordev->clk);
- clk_put(xordev->clk);
+ if (!IS_ERR(xordev->clk)) {
+ clk_disable_unprepare(xordev->clk);
+ clk_put(xordev->clk);
+ }
+
return ret;
}