diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-08-02 20:49:38 -1000 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-08-02 20:49:38 -1000 |
commit | 73a9fe86fa21ccd528807b8cc871dc18be67ee5a (patch) | |
tree | 07b8295e89e8cacf29f74b23782a4f662259cad2 /drivers | |
parent | f3406816bb2486fc44558bec77179cd9bcbd4450 (diff) | |
parent | 50658b6602dad6dc76c226917f5d8cec0f680eab (diff) | |
download | linux-73a9fe86fa21ccd528807b8cc871dc18be67ee5a.tar.bz2 |
Merge branch 'spi/next' of git://git.secretlab.ca/git/linux-2.6
* 'spi/next' of git://git.secretlab.ca/git/linux-2.6:
spi/pl022: remove function cannot exit
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/spi/spi-pl022.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c index eba88c749fb1..730b4a37b823 100644 --- a/drivers/spi/spi-pl022.c +++ b/drivers/spi/spi-pl022.c @@ -2267,17 +2267,13 @@ static int __devexit pl022_remove(struct amba_device *adev) { struct pl022 *pl022 = amba_get_drvdata(adev); - int status = 0; + if (!pl022) return 0; /* Remove the queue */ - status = destroy_queue(pl022); - if (status != 0) { - dev_err(&adev->dev, - "queue remove failed (%d)\n", status); - return status; - } + if (destroy_queue(pl022) != 0) + dev_err(&adev->dev, "queue remove failed\n"); load_ssp_default_config(pl022); pl022_dma_remove(pl022); free_irq(adev->irq[0], pl022); @@ -2289,7 +2285,6 @@ pl022_remove(struct amba_device *adev) spi_unregister_master(pl022->master); spi_master_put(pl022->master); amba_set_drvdata(adev, NULL); - dev_dbg(&adev->dev, "remove succeeded\n"); return 0; } |