ieee1394: ohci1394: missing PPC PMac feature calls in failure path
The failure path of ohci1394_pci_probe() reuses ohci1394_pci_remove().
Doing so it missed to call ohci1394_pmac_off() in a few unlikely early
error cases.
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
diff --git a/drivers/ieee1394/ohci1394.c b/drivers/ieee1394/ohci1394.c
index 9e304c3..0690469 100644
--- a/drivers/ieee1394/ohci1394.c
+++ b/drivers/ieee1394/ohci1394.c
@@ -3242,7 +3242,7 @@
ohci = pci_get_drvdata(dev);
if (!ohci)
- return;
+ goto out;
device = get_device(&ohci->host->device);
@@ -3305,14 +3305,14 @@
release_mem_region(pci_resource_start(dev, 0),
OHCI1394_REGISTER_SIZE);
- ohci1394_pmac_off(dev);
-
case OHCI_INIT_ALLOC_HOST:
pci_set_drvdata(dev, NULL);
}
if (device)
put_device(device);
+out:
+ ohci1394_pmac_off(dev);
}
#ifdef CONFIG_PM