Commit 12f77011 authored by Dafna Hirschfeld's avatar Dafna Hirschfeld Committed by Oded Gabbay

accel/habanalabs: improvements to FW ver extraction

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: default avatarDafna Hirschfeld <dhirschfeld@habana.ai>
Reviewed-by: default avatarOded Gabbay <ogabbay@kernel.org>
Signed-off-by: default avatarOded Gabbay <ogabbay@kernel.org>
parent 6306e815
...@@ -71,7 +71,7 @@ static char *extract_fw_ver_from_str(const char *fw_str) ...@@ -71,7 +71,7 @@ static char *extract_fw_ver_from_str(const char *fw_str)
return NULL; 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; char major[8], minor[8], *first_dot, *second_dot;
int rc; int rc;
...@@ -86,7 +86,7 @@ static int extract_fw_sub_versions(struct hl_device *hdev, char *preboot_ver) ...@@ -86,7 +86,7 @@ static int extract_fw_sub_versions(struct hl_device *hdev, char *preboot_ver)
if (rc) { if (rc) {
dev_err(hdev->dev, "Error %d parsing preboot major version\n", rc); dev_err(hdev->dev, "Error %d parsing preboot major version\n", rc);
goto out; return rc;
} }
/* skip the first dot */ /* skip the first dot */
...@@ -102,9 +102,6 @@ static int extract_fw_sub_versions(struct hl_device *hdev, char *preboot_ver) ...@@ -102,9 +102,6 @@ static int extract_fw_sub_versions(struct hl_device *hdev, char *preboot_ver)
if (rc) if (rc)
dev_err(hdev->dev, "Error %d parsing preboot minor version\n", rc); dev_err(hdev->dev, "Error %d parsing preboot minor version\n", rc);
out:
kfree(preboot_ver);
return rc; return rc;
} }
...@@ -2181,8 +2178,8 @@ static int hl_fw_dynamic_read_device_fw_version(struct hl_device *hdev, ...@@ -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); dev_info(hdev->dev, "preboot version %s\n", preboot_ver);
/* This function takes care of freeing preboot_ver */ rc = hl_get_preboot_major_minor(hdev, preboot_ver);
rc = extract_fw_sub_versions(hdev, preboot_ver); kfree(preboot_ver);
if (rc) if (rc)
return rc; return rc;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment