habanalabs: remove power9 workaround for dma support
authorOded Gabbay <ogabbay@kernel.org>
Mon, 10 Jan 2022 15:01:50 +0000 (17:01 +0200)
committerOded Gabbay <ogabbay@kernel.org>
Mon, 28 Feb 2022 12:22:02 +0000 (14:22 +0200)
We don't need this workaround anymore.

Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
drivers/misc/habanalabs/common/habanalabs.h
drivers/misc/habanalabs/common/pci/pci.c
drivers/misc/habanalabs/gaudi/gaudi.c
drivers/misc/habanalabs/goya/goya.c

index b8acfef9577aede931e978afcca6d7b8ccf67db7..6c7a602104161d8f973d719c647e29325a265721 100644 (file)
@@ -2604,8 +2604,6 @@ struct hl_reset_info {
  * @in_debug: whether the device is in a state where the profiling/tracing infrastructure
  *            can be used. This indication is needed because in some ASICs we need to do
  *            specific operations to enable that infrastructure.
- * @power9_64bit_dma_enable: true to enable 64-bit DMA mask support. Relevant
- *                           only to POWER9 machines.
  * @cdev_sysfs_created: were char devices and sysfs nodes created.
  * @stop_on_err: true if engines should stop on error.
  * @supports_sync_stream: is sync stream supported.
@@ -2728,7 +2726,6 @@ struct hl_device {
        u8                              device_cpu_disabled;
        u8                              dma_mask;
        u8                              in_debug;
-       u8                              power9_64bit_dma_enable;
        u8                              cdev_sysfs_created;
        u8                              stop_on_err;
        u8                              supports_sync_stream;
index 0b5366cc84fdb39836c51f299ce2030b73e1af66..a6ffa342070c42788ea3dc2364393e239c06180f 100644 (file)
@@ -338,10 +338,7 @@ int hl_pci_set_outbound_region(struct hl_device *hdev,
                                lower_32_bits(outbound_region_end_address));
        rc |= hl_pci_iatu_write(hdev, 0x014, 0);
 
-       if ((hdev->power9_64bit_dma_enable) && (hdev->dma_mask == 64))
-               rc |= hl_pci_iatu_write(hdev, 0x018, 0x08000000);
-       else
-               rc |= hl_pci_iatu_write(hdev, 0x018, 0);
+       rc |= hl_pci_iatu_write(hdev, 0x018, 0);
 
        rc |= hl_pci_iatu_write(hdev, 0x020,
                                upper_32_bits(outbound_region_end_address));
index c4e41856ad319a4e01a693f85b2d17b514481be2..66c90164be6bb3a016425fd37dcd7ababfc006ce 100644 (file)
@@ -9008,14 +9008,7 @@ static void gaudi_reset_sob(struct hl_device *hdev, void *data)
 
 static void gaudi_set_dma_mask_from_fw(struct hl_device *hdev)
 {
-       if (RREG32(mmPSOC_GLOBAL_CONF_NON_RST_FLOPS_0) ==
-                                                       HL_POWER9_HOST_MAGIC) {
-               hdev->power9_64bit_dma_enable = 1;
-               hdev->dma_mask = 64;
-       } else {
-               hdev->power9_64bit_dma_enable = 0;
-               hdev->dma_mask = 48;
-       }
+       hdev->dma_mask = 48;
 }
 
 static u64 gaudi_get_device_time(struct hl_device *hdev)
index 916a718dddaca0be67aa53622d26387422ca9c84..1bd23578cb8363e0f394b5a757ebe77ca8fd85d0 100644 (file)
@@ -5554,16 +5554,7 @@ static void goya_reset_sob_group(struct hl_device *hdev, u16 sob_group)
 
 static void goya_set_dma_mask_from_fw(struct hl_device *hdev)
 {
-       if (RREG32(mmPSOC_GLOBAL_CONF_NON_RST_FLOPS_0) ==
-                                                       HL_POWER9_HOST_MAGIC) {
-               dev_dbg(hdev->dev, "Working in 64-bit DMA mode\n");
-               hdev->power9_64bit_dma_enable = 1;
-               hdev->dma_mask = 64;
-       } else {
-               dev_dbg(hdev->dev, "Working in 48-bit DMA mode\n");
-               hdev->power9_64bit_dma_enable = 0;
-               hdev->dma_mask = 48;
-       }
+       hdev->dma_mask = 48;
 }
 
 u64 goya_get_device_time(struct hl_device *hdev)