|
@@ -74,7 +74,7 @@ static int mcb_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
|
|
ret = -ENOTSUPP;
|
|
|
dev_err(&pdev->dev,
|
|
|
"IO mapped PCI devices are not supported\n");
|
|
|
- goto out_release;
|
|
|
+ goto out_iounmap;
|
|
|
}
|
|
|
|
|
|
pci_set_drvdata(pdev, priv);
|
|
@@ -89,7 +89,7 @@ static int mcb_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
|
|
|
|
|
ret = chameleon_parse_cells(priv->bus, priv->mapbase, priv->base);
|
|
|
if (ret < 0)
|
|
|
- goto out_iounmap;
|
|
|
+ goto out_mcb_bus;
|
|
|
num_cells = ret;
|
|
|
|
|
|
dev_dbg(&pdev->dev, "Found %d cells\n", num_cells);
|
|
@@ -98,6 +98,8 @@ static int mcb_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
|
|
|
|
|
return 0;
|
|
|
|
|
|
+out_mcb_bus:
|
|
|
+ mcb_release_bus(priv->bus);
|
|
|
out_iounmap:
|
|
|
iounmap(priv->base);
|
|
|
out_release:
|