[PATCH 11/11] wifi: ath12k: fix endianness handling in QMI response
kernel test robot
lkp at intel.com
Thu Jul 17 01:33:09 PDT 2025
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-20250716]
[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-12-alexander.wilhelm%40westermo.com
patch subject: [PATCH 11/11] wifi: ath12k: fix endianness handling in QMI response
config: mips-randconfig-r123-20250717 (https://download.01.org/0day-ci/archive/20250717/202507171640.30pUvpPv-lkp@intel.com/config)
compiler: mips-linux-gcc (GCC) 8.5.0
reproduce: (https://download.01.org/0day-ci/archive/20250717/202507171640.30pUvpPv-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 at intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202507171640.30pUvpPv-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> drivers/soc/qcom/pdr_interface.c:612:22: sparse: sparse: restricted __le16 degrades to integer
drivers/soc/qcom/pdr_interface.c:613:22: sparse: sparse: restricted __le16 degrades to integer
vim +612 drivers/soc/qcom/pdr_interface.c
fbe639b44a8275 Sibi Sankar 2020-03-12 549
fbe639b44a8275 Sibi Sankar 2020-03-12 550 /**
fbe639b44a8275 Sibi Sankar 2020-03-12 551 * pdr_restart_pd() - restart PD
fbe639b44a8275 Sibi Sankar 2020-03-12 552 * @pdr: PDR client handle
fbe639b44a8275 Sibi Sankar 2020-03-12 553 * @pds: PD service handle
fbe639b44a8275 Sibi Sankar 2020-03-12 554 *
fbe639b44a8275 Sibi Sankar 2020-03-12 555 * Restarts the PD tracked by the PDR client handle for a given service path.
fbe639b44a8275 Sibi Sankar 2020-03-12 556 *
fbe639b44a8275 Sibi Sankar 2020-03-12 557 * Return: 0 on success, negative errno on failure.
fbe639b44a8275 Sibi Sankar 2020-03-12 558 */
fbe639b44a8275 Sibi Sankar 2020-03-12 559 int pdr_restart_pd(struct pdr_handle *pdr, struct pdr_service *pds)
fbe639b44a8275 Sibi Sankar 2020-03-12 560 {
fbe639b44a8275 Sibi Sankar 2020-03-12 561 struct servreg_restart_pd_resp resp;
a161ffe4b87772 Tom Rix 2020-08-19 562 struct servreg_restart_pd_req req = { 0 };
fbe639b44a8275 Sibi Sankar 2020-03-12 563 struct sockaddr_qrtr addr;
fbe639b44a8275 Sibi Sankar 2020-03-12 564 struct pdr_service *tmp;
fbe639b44a8275 Sibi Sankar 2020-03-12 565 struct qmi_txn txn;
fbe639b44a8275 Sibi Sankar 2020-03-12 566 int ret;
fbe639b44a8275 Sibi Sankar 2020-03-12 567
fbe639b44a8275 Sibi Sankar 2020-03-12 568 if (IS_ERR_OR_NULL(pdr) || IS_ERR_OR_NULL(pds))
fbe639b44a8275 Sibi Sankar 2020-03-12 569 return -EINVAL;
fbe639b44a8275 Sibi Sankar 2020-03-12 570
fbe639b44a8275 Sibi Sankar 2020-03-12 571 mutex_lock(&pdr->list_lock);
fbe639b44a8275 Sibi Sankar 2020-03-12 572 list_for_each_entry(tmp, &pdr->lookups, node) {
fbe639b44a8275 Sibi Sankar 2020-03-12 573 if (tmp != pds)
fbe639b44a8275 Sibi Sankar 2020-03-12 574 continue;
fbe639b44a8275 Sibi Sankar 2020-03-12 575
fbe639b44a8275 Sibi Sankar 2020-03-12 576 if (!pds->service_connected)
fbe639b44a8275 Sibi Sankar 2020-03-12 577 break;
fbe639b44a8275 Sibi Sankar 2020-03-12 578
fbe639b44a8275 Sibi Sankar 2020-03-12 579 /* Prepare req message */
26bc7a6a0beed8 Len Baker 2021-08-08 580 strscpy(req.service_path, pds->service_path, sizeof(req.service_path));
fbe639b44a8275 Sibi Sankar 2020-03-12 581 addr = pds->addr;
fbe639b44a8275 Sibi Sankar 2020-03-12 582 break;
fbe639b44a8275 Sibi Sankar 2020-03-12 583 }
fbe639b44a8275 Sibi Sankar 2020-03-12 584 mutex_unlock(&pdr->list_lock);
fbe639b44a8275 Sibi Sankar 2020-03-12 585
fbe639b44a8275 Sibi Sankar 2020-03-12 586 if (!req.service_path[0])
fbe639b44a8275 Sibi Sankar 2020-03-12 587 return -EINVAL;
fbe639b44a8275 Sibi Sankar 2020-03-12 588
fbe639b44a8275 Sibi Sankar 2020-03-12 589 ret = qmi_txn_init(&pdr->notifier_hdl, &txn,
fbe639b44a8275 Sibi Sankar 2020-03-12 590 servreg_restart_pd_resp_ei,
fbe639b44a8275 Sibi Sankar 2020-03-12 591 &resp);
fbe639b44a8275 Sibi Sankar 2020-03-12 592 if (ret < 0)
fbe639b44a8275 Sibi Sankar 2020-03-12 593 return ret;
fbe639b44a8275 Sibi Sankar 2020-03-12 594
fbe639b44a8275 Sibi Sankar 2020-03-12 595 ret = qmi_send_request(&pdr->notifier_hdl, &addr,
fbe639b44a8275 Sibi Sankar 2020-03-12 596 &txn, SERVREG_RESTART_PD_REQ,
fbe639b44a8275 Sibi Sankar 2020-03-12 597 SERVREG_RESTART_PD_REQ_MAX_LEN,
fbe639b44a8275 Sibi Sankar 2020-03-12 598 servreg_restart_pd_req_ei, &req);
fbe639b44a8275 Sibi Sankar 2020-03-12 599 if (ret < 0) {
fbe639b44a8275 Sibi Sankar 2020-03-12 600 qmi_txn_cancel(&txn);
fbe639b44a8275 Sibi Sankar 2020-03-12 601 return ret;
fbe639b44a8275 Sibi Sankar 2020-03-12 602 }
fbe639b44a8275 Sibi Sankar 2020-03-12 603
fbe639b44a8275 Sibi Sankar 2020-03-12 604 ret = qmi_txn_wait(&txn, 5 * HZ);
fbe639b44a8275 Sibi Sankar 2020-03-12 605 if (ret < 0) {
fbe639b44a8275 Sibi Sankar 2020-03-12 606 pr_err("PDR: %s PD restart txn wait failed: %d\n",
fbe639b44a8275 Sibi Sankar 2020-03-12 607 req.service_path, ret);
fbe639b44a8275 Sibi Sankar 2020-03-12 608 return ret;
fbe639b44a8275 Sibi Sankar 2020-03-12 609 }
fbe639b44a8275 Sibi Sankar 2020-03-12 610
fbe639b44a8275 Sibi Sankar 2020-03-12 611 /* Check response if PDR is disabled */
fbe639b44a8275 Sibi Sankar 2020-03-12 @612 if (resp.resp.result == QMI_RESULT_FAILURE_V01 &&
fbe639b44a8275 Sibi Sankar 2020-03-12 613 resp.resp.error == QMI_ERR_DISABLED_V01) {
fbe639b44a8275 Sibi Sankar 2020-03-12 614 pr_err("PDR: %s PD restart is disabled: 0x%x\n",
fbe639b44a8275 Sibi Sankar 2020-03-12 615 req.service_path, resp.resp.error);
fbe639b44a8275 Sibi Sankar 2020-03-12 616 return -EOPNOTSUPP;
fbe639b44a8275 Sibi Sankar 2020-03-12 617 }
fbe639b44a8275 Sibi Sankar 2020-03-12 618
fbe639b44a8275 Sibi Sankar 2020-03-12 619 /* Check the response for other error case*/
fbe639b44a8275 Sibi Sankar 2020-03-12 620 if (resp.resp.result != QMI_RESULT_SUCCESS_V01) {
fbe639b44a8275 Sibi Sankar 2020-03-12 621 pr_err("PDR: %s request for PD restart failed: 0x%x\n",
fbe639b44a8275 Sibi Sankar 2020-03-12 622 req.service_path, resp.resp.error);
fbe639b44a8275 Sibi Sankar 2020-03-12 623 return -EREMOTEIO;
fbe639b44a8275 Sibi Sankar 2020-03-12 624 }
fbe639b44a8275 Sibi Sankar 2020-03-12 625
fbe639b44a8275 Sibi Sankar 2020-03-12 626 return 0;
fbe639b44a8275 Sibi Sankar 2020-03-12 627 }
9b09c0f289c5a8 Unnathi Chalicheemala 2023-09-22 628 EXPORT_SYMBOL_GPL(pdr_restart_pd);
fbe639b44a8275 Sibi Sankar 2020-03-12 629
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
More information about the ath12k
mailing list