From: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
To: Raj Kumar Bhagat <quic_rajkbhag@quicinc.com>, ath12k@lists.infradead.org
Cc: Johannes Berg <johannes@sipsolutions.net>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Jeff Johnson <jjohnson@kernel.org>,
linux-wireless@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v7 07/13] wifi: ath12k: add support for fixed QMI firmware memory
Date: Fri, 28 Feb 2025 07:38:15 -0800 [thread overview]
Message-ID: <e702e39a-e199-4ea4-a066-0b2e26253f98@oss.qualcomm.com> (raw)
In-Reply-To: <20250227191034.1949954-8-quic_rajkbhag@quicinc.com>
On 2/27/2025 11:10 AM, Raj Kumar Bhagat wrote:
...
> +static int ath12k_qmi_assign_target_mem_chunk(struct ath12k_base *ab)
> +{
> + struct reserved_mem *rmem;
> + phys_addr_t bdf_size;
> + int i, idx, ret;
> +
> + for (i = 0, idx = 0; i < ab->qmi.mem_seg_count; i++) {
> + switch (ab->qmi.target_mem[i].type) {
> + case HOST_DDR_REGION_TYPE:
> + rmem = ath12k_core_get_reserved_mem(ab, 0);
> + if (!rmem) {
> + ret = -ENODEV;
> + goto out;
> + }
> +
> + if (rmem->size < ab->qmi.target_mem[i].size) {
> + ath12k_dbg(ab, ATH12K_DBG_QMI,
> + "failed to assign mem type %d req size %d avail size %lld\n",
> + ab->qmi.target_mem[i].type,
> + ab->qmi.target_mem[i].size,
> + rmem->size);
The v6 version had a kernel test robot build warning here when building for
MIPS and it looks like nothing has changed.
I don't know the history of why struct reserved_mem::size is of type
phys_addr_t, but that type has a different size depending upon architecture,
therefore you can't use %lld.
To print it correctly you either need to use the %paa format that is meant for
that type, or probably better would be to assign it to a variable of type
size_t and then use %zu (and use that variable in the size test as well)
(also consider if the other %d formats should be %u instead)
> + ret = -EINVAL;
> + goto out;
> + }
> +
> + ab->qmi.target_mem[idx].paddr = rmem->base;
> + ab->qmi.target_mem[idx].v.ioaddr =
> + ioremap(ab->qmi.target_mem[idx].paddr,
> + ab->qmi.target_mem[i].size);
> + if (!ab->qmi.target_mem[idx].v.ioaddr) {
> + ret = -EIO;
> + goto out;
> + }
> + ab->qmi.target_mem[idx].size = ab->qmi.target_mem[i].size;
> + ab->qmi.target_mem[idx].type = ab->qmi.target_mem[i].type;
> + idx++;
> + break;
> + case BDF_MEM_REGION_TYPE:
> + rmem = ath12k_core_get_reserved_mem(ab, 0);
> + if (!rmem) {
> + ret = -ENODEV;
> + goto out;
> + }
> +
> + bdf_size = rmem->size - ab->hw_params->bdf_addr_offset;
> + if (bdf_size < ab->qmi.target_mem[i].size) {
> + ath12k_dbg(ab, ATH12K_DBG_QMI,
> + "failed to assign mem type %d req size %d avail size %lld\n",
> + ab->qmi.target_mem[i].type,
> + ab->qmi.target_mem[i].size,
> + bdf_size);
the same issue exists here.
again this would be fixed by making bdf_size type size_t and using %zu
> + ret = -EINVAL;
> + goto out;
> + }
> + ab->qmi.target_mem[idx].paddr =
> + rmem->base + ab->hw_params->bdf_addr_offset;
> + ab->qmi.target_mem[idx].v.ioaddr =
> + ioremap(ab->qmi.target_mem[idx].paddr,
> + ab->qmi.target_mem[i].size);
> + if (!ab->qmi.target_mem[idx].v.ioaddr) {
> + ret = -EIO;
> + goto out;
> + }
> + ab->qmi.target_mem[idx].size = ab->qmi.target_mem[i].size;
> + ab->qmi.target_mem[idx].type = ab->qmi.target_mem[i].type;
> + idx++;
> + break;
next prev parent reply other threads:[~2025-02-28 15:57 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-27 19:10 [PATCH v7 00/13] wifi: ath12k: add Ath12k AHB driver support for IPQ5332 Raj Kumar Bhagat
2025-02-27 19:10 ` [PATCH v7 01/13] dt-bindings: net: wireless: describe the ath12k AHB module " Raj Kumar Bhagat
2025-02-28 6:49 ` Krzysztof Kozlowski
2025-02-27 19:10 ` [PATCH v7 02/13] wifi: ath12k: fix incorrect CE addresses Raj Kumar Bhagat
2025-02-27 19:10 ` [PATCH v7 03/13] wifi: ath12k: refactor ath12k_hw_regs structure Raj Kumar Bhagat
2025-02-27 19:10 ` [PATCH v7 04/13] wifi: ath12k: add ath12k_hw_params for IPQ5332 Raj Kumar Bhagat
2025-02-27 19:10 ` [PATCH v7 05/13] wifi: ath12k: avoid m3 firmware download in AHB device IPQ5332 Raj Kumar Bhagat
2025-02-27 19:10 ` [PATCH v7 06/13] wifi: ath12k: Add hw_params to remap CE register space for IPQ5332 Raj Kumar Bhagat
2025-02-27 19:10 ` [PATCH v7 07/13] wifi: ath12k: add support for fixed QMI firmware memory Raj Kumar Bhagat
2025-02-28 15:38 ` Jeff Johnson [this message]
2025-02-28 16:06 ` Raj Kumar Bhagat
2025-02-27 19:10 ` [PATCH v7 08/13] wifi: ath12k: add AHB driver support for IPQ5332 Raj Kumar Bhagat
2025-02-27 19:10 ` [PATCH v7 09/13] wifi: ath12k: Power up root PD Raj Kumar Bhagat
2025-02-27 19:10 ` [PATCH v7 10/13] wifi: ath12k: Register various userPD interrupts and save SMEM entries Raj Kumar Bhagat
2025-02-27 19:10 ` [PATCH v7 11/13] wifi: ath12k: Power up userPD Raj Kumar Bhagat
2025-02-27 19:10 ` [PATCH v7 12/13] wifi: ath12k: Power down userPD Raj Kumar Bhagat
2025-02-27 19:10 ` [PATCH v7 13/13] wifi: ath12k: enable ath12k AHB support Raj Kumar Bhagat
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=e702e39a-e199-4ea4-a066-0b2e26253f98@oss.qualcomm.com \
--to=jeff.johnson@oss.qualcomm.com \
--cc=ath12k@lists.infradead.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=jjohnson@kernel.org \
--cc=johannes@sipsolutions.net \
--cc=krzk+dt@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=quic_rajkbhag@quicinc.com \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.