forked from Minki/linux
habanalabs: unmap PCI bars upon iATU failure
In case the driver fails to configure the PCI controller iATU, it needs to unmap the PCI bars before exiting so if the driver is removed, the bars won't be left mapped. Signed-off-by: Ofir Bitton <obitton@habana.ai> Reviewed-by: Oded Gabbay <oded.gabbay@gmail.com> Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
This commit is contained in:
parent
51072c0f5b
commit
f1aae40e8d
@ -369,15 +369,17 @@ int hl_pci_init(struct hl_device *hdev)
|
||||
rc = hdev->asic_funcs->init_iatu(hdev);
|
||||
if (rc) {
|
||||
dev_err(hdev->dev, "Failed to initialize iATU\n");
|
||||
goto disable_device;
|
||||
goto unmap_pci_bars;
|
||||
}
|
||||
|
||||
rc = hl_pci_set_dma_mask(hdev);
|
||||
if (rc)
|
||||
goto disable_device;
|
||||
goto unmap_pci_bars;
|
||||
|
||||
return 0;
|
||||
|
||||
unmap_pci_bars:
|
||||
hl_pci_bars_unmap(hdev);
|
||||
disable_device:
|
||||
pci_clear_master(pdev);
|
||||
pci_disable_device(pdev);
|
||||
|
Loading…
Reference in New Issue
Block a user