From: Ofir Bitton Date: Tue, 20 Apr 2021 07:15:25 +0000 (+0300) Subject: habanalabs: give FW a grace time for configuring iATU X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=38fbcc6ec9a3812f355c0360f6e37966ceb24a7c;p=linux.git habanalabs: give FW a grace time for configuring iATU iATU (internal Address Translation Unit of the PCI controller) configuration is being done by FW right after driver enables the PCI device. Hence, driver must add a minor sleep afterwards in order to make sure FW finishes configuring iATU regions. Signed-off-by: Ofir Bitton Reviewed-by: Oded Gabbay Signed-off-by: Oded Gabbay --- diff --git a/drivers/misc/habanalabs/common/pci/pci.c b/drivers/misc/habanalabs/common/pci/pci.c index 9ef6c46a31467..8e7982be61917 100644 --- a/drivers/misc/habanalabs/common/pci/pci.c +++ b/drivers/misc/habanalabs/common/pci/pci.c @@ -430,6 +430,10 @@ int hl_pci_init(struct hl_device *hdev) goto unmap_pci_bars; } + /* Driver must sleep in order for FW to finish the iATU configuration */ + if (hdev->asic_prop.iatu_done_by_fw) + usleep_range(2000, 3000); + return 0; unmap_pci_bars: