From: Dafna Hirschfeld <dhirschf...@habana.ai>

1. Rename the func to hl_get_preboot_major_minor because we also set
   the extracted values in hdev fields.

2. Free the allocated string in the calling function which makes more
   sense

Signed-off-by: Dafna Hirschfeld <dhirschf...@habana.ai>
Reviewed-by: Oded Gabbay <ogab...@kernel.org>
Signed-off-by: Oded Gabbay <ogab...@kernel.org>
---
 drivers/accel/habanalabs/common/firmware_if.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/drivers/accel/habanalabs/common/firmware_if.c 
b/drivers/accel/habanalabs/common/firmware_if.c
index 96027a1c124d..781256dd49ad 100644
--- a/drivers/accel/habanalabs/common/firmware_if.c
+++ b/drivers/accel/habanalabs/common/firmware_if.c
@@ -71,7 +71,7 @@ static char *extract_fw_ver_from_str(const char *fw_str)
        return NULL;
 }
 
-static int extract_fw_sub_versions(struct hl_device *hdev, char *preboot_ver)
+static int hl_get_preboot_major_minor(struct hl_device *hdev, char 
*preboot_ver)
 {
        char major[8], minor[8], *first_dot, *second_dot;
        int rc;
@@ -86,7 +86,7 @@ static int extract_fw_sub_versions(struct hl_device *hdev, 
char *preboot_ver)
 
        if (rc) {
                dev_err(hdev->dev, "Error %d parsing preboot major version\n", 
rc);
-               goto out;
+               return rc;
        }
 
        /* skip the first dot */
@@ -102,9 +102,6 @@ static int extract_fw_sub_versions(struct hl_device *hdev, 
char *preboot_ver)
 
        if (rc)
                dev_err(hdev->dev, "Error %d parsing preboot minor version\n", 
rc);
-
-out:
-       kfree(preboot_ver);
        return rc;
 }
 
@@ -2181,8 +2178,8 @@ static int hl_fw_dynamic_read_device_fw_version(struct 
hl_device *hdev,
 
                        dev_info(hdev->dev, "preboot version %s\n", 
preboot_ver);
 
-                       /* This function takes care of freeing preboot_ver */
-                       rc = extract_fw_sub_versions(hdev, preboot_ver);
+                       rc = hl_get_preboot_major_minor(hdev, preboot_ver);
+                       kfree(preboot_ver);
                        if (rc)
                                return rc;
                }
-- 
2.40.0

Reply via email to