From 70852c95ac0e6234eaa87e267054dcbc0712f240 Mon Sep 17 00:00:00 2001 From: Dafna Hirschfeld Date: Thu, 23 Jun 2022 07:47:48 +0300 Subject: [PATCH] habanalabs/gaudi: use memory_scrub_val from debugfs In the callback scrub_device_mem, use 'memory_scrub_val' from debugfs for the scrubbing value. Signed-off-by: Dafna Hirschfeld Reviewed-by: Oded Gabbay Signed-off-by: Oded Gabbay --- Documentation/ABI/testing/debugfs-driver-habanalabs | 3 ++- drivers/misc/habanalabs/gaudi/gaudi.c | 5 ++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Documentation/ABI/testing/debugfs-driver-habanalabs b/Documentation/ABI/testing/debugfs-driver-habanalabs index 0f8d20f..deb6694 100644 --- a/Documentation/ABI/testing/debugfs-driver-habanalabs +++ b/Documentation/ABI/testing/debugfs-driver-habanalabs @@ -182,7 +182,8 @@ Date: May 2022 KernelVersion: 5.19 Contact: dhirschfeld@habana.ai Description: The value to which the dram will be set to when the user - scrubs the dram using 'memory_scrub' debugfs file + scrubs the dram using 'memory_scrub' debugfs file and + the scrubbing value when using module param 'memory_scrub' What: /sys/kernel/debug/habanalabs/hl/mmu Date: Jan 2019 diff --git a/drivers/misc/habanalabs/gaudi/gaudi.c b/drivers/misc/habanalabs/gaudi/gaudi.c index bc5e745..8cf3382 100644 --- a/drivers/misc/habanalabs/gaudi/gaudi.c +++ b/drivers/misc/habanalabs/gaudi/gaudi.c @@ -4851,7 +4851,7 @@ static int gaudi_scrub_device_mem(struct hl_device *hdev) struct asic_fixed_properties *prop = &hdev->asic_prop; u64 addr, size, dummy_val; int rc = 0; - u64 val = 0; + u64 val = hdev->memory_scrub_val; if (!hdev->memory_scrub) return 0; @@ -4871,7 +4871,6 @@ static int gaudi_scrub_device_mem(struct hl_device *hdev) /* Scrub SRAM */ addr = prop->sram_user_base_address; size = hdev->pldm ? 0x10000 : prop->sram_size - SRAM_USER_BASE_OFFSET; - val = 0x7777777777777777ull; dev_dbg(hdev->dev, "Scrubing SRAM: 0x%09llx - 0x%09llx val: 0x%llx\n", addr, addr + size, val); @@ -4882,7 +4881,7 @@ static int gaudi_scrub_device_mem(struct hl_device *hdev) } /* Scrub HBM using all DMA channels in parallel */ - rc = gaudi_scrub_device_dram(hdev, 0xdeadbeaf); + rc = gaudi_scrub_device_dram(hdev, val); if (rc) { dev_err(hdev->dev, "Failed to clear HBM (%d)\n", rc); return rc; -- 2.7.4