[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <202507172333.LZcmFwWs-lkp@intel.com>
Date: Thu, 17 Jul 2025 23:59:43 +0800
From: kernel test robot <lkp@...el.com>
To: Alexander Wilhelm <alexander.wilhelm@...termo.com>,
Jeff Johnson <jjohnson@...nel.org>,
Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>
Cc: oe-kbuild-all@...ts.linux.dev, linux-wireless@...r.kernel.org,
ath12k@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-arm-msm@...r.kernel.org
Subject: Re: [PATCH 07/11] wifi: ath12k: fix endianness handling in QMI bdf
download
Hi Alexander,
kernel test robot noticed the following build warnings:
[auto build test WARNING on ath/ath-next]
[also build test WARNING on linus/master v6.16-rc6 next-20250717]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Alexander-Wilhelm/wifi-ath12k-fix-endianness-handling-in-QMI-host-capability-request/20250716-162058
base: https://git.kernel.org/pub/scm/linux/kernel/git/ath/ath.git ath-next
patch link: https://lore.kernel.org/r/20250716075100.1447352-8-alexander.wilhelm%40westermo.com
patch subject: [PATCH 07/11] wifi: ath12k: fix endianness handling in QMI bdf download
config: alpha-randconfig-r122-20250717 (https://download.01.org/0day-ci/archive/20250717/202507172333.LZcmFwWs-lkp@intel.com/config)
compiler: alpha-linux-gcc (GCC) 8.5.0
reproduce: (https://download.01.org/0day-ci/archive/20250717/202507172333.LZcmFwWs-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202507172333.LZcmFwWs-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> drivers/net/wireless/ath/ath12k/qmi.c:2996:37: sparse: sparse: bad assignment (+=) to restricted __le32
vim +2996 drivers/net/wireless/ath/ath12k/qmi.c
2919
2920 static int ath12k_qmi_load_file_target_mem(struct ath12k_base *ab,
2921 const u8 *data, u32 len, u8 type)
2922 {
2923 struct qmi_wlanfw_bdf_download_req_msg_v01 *req;
2924 struct qmi_wlanfw_bdf_download_resp_msg_v01 resp = {};
2925 struct qmi_txn txn;
2926 const u8 *temp = data;
2927 int ret = 0;
2928 u32 remaining = len;
2929
2930 req = kzalloc(sizeof(*req), GFP_KERNEL);
2931 if (!req)
2932 return -ENOMEM;
2933
2934 while (remaining) {
2935 req->valid = 1;
2936 req->file_id_valid = 1;
2937 req->file_id = cpu_to_le32(ab->qmi.target.board_id);
2938 req->total_size_valid = 1;
2939 req->total_size = cpu_to_le32(remaining);
2940 req->seg_id_valid = 1;
2941 req->data_valid = 1;
2942 req->bdf_type = type;
2943 req->bdf_type_valid = 1;
2944 req->end_valid = 1;
2945 req->end = 0;
2946
2947 if (remaining > QMI_WLANFW_MAX_DATA_SIZE_V01) {
2948 req->data_len = cpu_to_le32(QMI_WLANFW_MAX_DATA_SIZE_V01);
2949 } else {
2950 req->data_len = cpu_to_le32(remaining);
2951 req->end = 1;
2952 }
2953
2954 if (type == ATH12K_QMI_FILE_TYPE_EEPROM) {
2955 req->data_valid = 0;
2956 req->end = 1;
2957 req->data_len = cpu_to_le32(ATH12K_QMI_MAX_BDF_FILE_NAME_SIZE);
2958 } else {
2959 memcpy(req->data, temp, le32_to_cpu(req->data_len));
2960 }
2961
2962 ret = qmi_txn_init(&ab->qmi.handle, &txn,
2963 qmi_wlanfw_bdf_download_resp_msg_v01_ei,
2964 &resp);
2965 if (ret < 0)
2966 goto out;
2967
2968 ath12k_dbg(ab, ATH12K_DBG_QMI, "qmi bdf download req fixed addr type %d\n",
2969 type);
2970
2971 ret = qmi_send_request(&ab->qmi.handle, NULL, &txn,
2972 QMI_WLANFW_BDF_DOWNLOAD_REQ_V01,
2973 QMI_WLANFW_BDF_DOWNLOAD_REQ_MSG_V01_MAX_LEN,
2974 qmi_wlanfw_bdf_download_req_msg_v01_ei, req);
2975 if (ret < 0) {
2976 qmi_txn_cancel(&txn);
2977 goto out;
2978 }
2979
2980 ret = qmi_txn_wait(&txn, msecs_to_jiffies(ATH12K_QMI_WLANFW_TIMEOUT_MS));
2981 if (ret < 0)
2982 goto out;
2983
2984 if (resp.resp.result != QMI_RESULT_SUCCESS_V01) {
2985 ath12k_warn(ab, "qmi BDF download failed, result: %d, err: %d\n",
2986 resp.resp.result, resp.resp.error);
2987 ret = -EINVAL;
2988 goto out;
2989 }
2990
2991 if (type == ATH12K_QMI_FILE_TYPE_EEPROM) {
2992 remaining = 0;
2993 } else {
2994 remaining -= le32_to_cpu(req->data_len);
2995 temp += le32_to_cpu(req->data_len);
> 2996 req->seg_id += cpu_to_le32(1);
2997 ath12k_dbg(ab, ATH12K_DBG_QMI,
2998 "qmi bdf download request remaining %i\n",
2999 remaining);
3000 }
3001 }
3002
3003 out:
3004 kfree(req);
3005 return ret;
3006 }
3007
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists