ath11k: change fw build id format in driver init log
authorHari Chandrakanthan <quic_haric@quicinc.com>
Wed, 9 Mar 2022 11:24:25 +0000 (16:54 +0530)
committerKalle Valo <quic_kvalo@quicinc.com>
Mon, 21 Mar 2022 10:55:44 +0000 (12:55 +0200)
Currently fw build id is printed during init as follows.

fw_version 0x250684a5 fw_build_timestamp 2021-07-13 10:57
fw_build_id QC_IMAGE_VERSION_STRING=WLAN.HK.2.5.0.1-01100-QCAHKSWPL_SILICONZ-1

The string "QC_IMAGE_VERSION_STRING=" is removed from the log
to improve readability.

With this patch the fw build id is printed during init as follows.
fw_version 0x250684a5 fw_build_timestamp 2021-07-13 10:57
fw_build_id WLAN.HK.2.5.0.1-01100-QCAHKSWPL_SILICONZ-1

Signed-off-by: Hari Chandrakanthan <quic_haric@quicinc.com>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/1646825065-7736-1-git-send-email-quic_haric@quicinc.com
drivers/net/wireless/ath/ath11k/qmi.c

index 04e966830c188ababb6179a665c09b2e7ae5fe58..ec110fe81378a61aa6a890b694e71029cfabc91c 100644 (file)
@@ -16,6 +16,8 @@
 #define SLEEP_CLOCK_SELECT_INTERNAL_BIT        0x02
 #define HOST_CSTATE_BIT                        0x04
 
+#define FW_BUILD_ID_MASK "QC_IMAGE_VERSION_STRING="
+
 bool ath11k_cold_boot_cal = 1;
 EXPORT_SYMBOL(ath11k_cold_boot_cal);
 module_param_named(cold_boot_cal, ath11k_cold_boot_cal, bool, 0644);
@@ -2008,6 +2010,8 @@ static int ath11k_qmi_request_target_cap(struct ath11k_base *ab)
        struct qmi_txn txn;
        int ret = 0;
        int r;
+       char *fw_build_id;
+       int fw_build_id_mask_len;
 
        memset(&req, 0, sizeof(req));
        memset(&resp, 0, sizeof(resp));
@@ -2073,6 +2077,11 @@ static int ath11k_qmi_request_target_cap(struct ath11k_base *ab)
                ath11k_dbg(ab, ATH11K_DBG_QMI, "qmi cal data supported from eeprom\n");
        }
 
+       fw_build_id = ab->qmi.target.fw_build_id;
+       fw_build_id_mask_len = strlen(FW_BUILD_ID_MASK);
+       if (!strncmp(fw_build_id, FW_BUILD_ID_MASK, fw_build_id_mask_len))
+               fw_build_id = fw_build_id + fw_build_id_mask_len;
+
        ath11k_info(ab, "chip_id 0x%x chip_family 0x%x board_id 0x%x soc_id 0x%x\n",
                    ab->qmi.target.chip_id, ab->qmi.target.chip_family,
                    ab->qmi.target.board_id, ab->qmi.target.soc_id);
@@ -2080,7 +2089,7 @@ static int ath11k_qmi_request_target_cap(struct ath11k_base *ab)
        ath11k_info(ab, "fw_version 0x%x fw_build_timestamp %s fw_build_id %s",
                    ab->qmi.target.fw_version,
                    ab->qmi.target.fw_build_timestamp,
-                   ab->qmi.target.fw_build_id);
+                   fw_build_id);
 
        r = ath11k_core_check_dt(ab);
        if (r)