diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-08-03 02:49:38 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-08-03 02:49:38 -0400 |
commit | 73a9fe86fa21ccd528807b8cc871dc18be67ee5a (patch) | |
tree | 07b8295e89e8cacf29f74b23782a4f662259cad2 | |
parent | f3406816bb2486fc44558bec77179cd9bcbd4450 (diff) | |
parent | 50658b6602dad6dc76c226917f5d8cec0f680eab (diff) |
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
-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 | |||
2267 | pl022_remove(struct amba_device *adev) | 2267 | pl022_remove(struct amba_device *adev) |
2268 | { | 2268 | { |
2269 | struct pl022 *pl022 = amba_get_drvdata(adev); | 2269 | struct pl022 *pl022 = amba_get_drvdata(adev); |
2270 | int status = 0; | 2270 | |
2271 | if (!pl022) | 2271 | if (!pl022) |
2272 | return 0; | 2272 | return 0; |
2273 | 2273 | ||
2274 | /* Remove the queue */ | 2274 | /* Remove the queue */ |
2275 | status = destroy_queue(pl022); | 2275 | if (destroy_queue(pl022) != 0) |
2276 | if (status != 0) { | 2276 | dev_err(&adev->dev, "queue remove failed\n"); |
2277 | dev_err(&adev->dev, | ||
2278 | "queue remove failed (%d)\n", status); | ||
2279 | return status; | ||
2280 | } | ||
2281 | load_ssp_default_config(pl022); | 2277 | load_ssp_default_config(pl022); |
2282 | pl022_dma_remove(pl022); | 2278 | pl022_dma_remove(pl022); |
2283 | free_irq(adev->irq[0], pl022); | 2279 | free_irq(adev->irq[0], pl022); |
@@ -2289,7 +2285,6 @@ pl022_remove(struct amba_device *adev) | |||
2289 | spi_unregister_master(pl022->master); | 2285 | spi_unregister_master(pl022->master); |
2290 | spi_master_put(pl022->master); | 2286 | spi_master_put(pl022->master); |
2291 | amba_set_drvdata(adev, NULL); | 2287 | amba_set_drvdata(adev, NULL); |
2292 | dev_dbg(&adev->dev, "remove succeeded\n"); | ||
2293 | return 0; | 2288 | return 0; |
2294 | } | 2289 | } |
2295 | 2290 | ||