diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-02-01 17:09:32 -0500 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-02-01 17:09:32 -0500 |
commit | ed908fa1d037d780ebd04a412693bf3fc9c3a8fe (patch) | |
tree | 9789ce734b93e67accd5e1665b9c799433ed81e6 /drivers/ide/ppc/pmac.c | |
parent | ed1f78899195545ec49bc9a42ee8eb35697b216a (diff) |
ide-pmac: macio resource freeing bugfix
Release DMA resource before zeroing pmif.
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/ppc/pmac.c')
-rw-r--r-- | drivers/ide/ppc/pmac.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/ide/ppc/pmac.c b/drivers/ide/ppc/pmac.c index b17e097650b1..f6a374a0de03 100644 --- a/drivers/ide/ppc/pmac.c +++ b/drivers/ide/ppc/pmac.c | |||
@@ -1228,12 +1228,12 @@ pmac_ide_macio_attach(struct macio_dev *mdev, const struct of_device_id *match) | |||
1228 | /* The inteface is released to the common IDE layer */ | 1228 | /* The inteface is released to the common IDE layer */ |
1229 | dev_set_drvdata(&mdev->ofdev.dev, NULL); | 1229 | dev_set_drvdata(&mdev->ofdev.dev, NULL); |
1230 | iounmap(base); | 1230 | iounmap(base); |
1231 | if (pmif->dma_regs) | 1231 | if (pmif->dma_regs) { |
1232 | iounmap(pmif->dma_regs); | 1232 | iounmap(pmif->dma_regs); |
1233 | macio_release_resource(mdev, 1); | ||
1234 | } | ||
1233 | memset(pmif, 0, sizeof(*pmif)); | 1235 | memset(pmif, 0, sizeof(*pmif)); |
1234 | macio_release_resource(mdev, 0); | 1236 | macio_release_resource(mdev, 0); |
1235 | if (pmif->dma_regs) | ||
1236 | macio_release_resource(mdev, 1); | ||
1237 | } | 1237 | } |
1238 | 1238 | ||
1239 | return rc; | 1239 | return rc; |