[PATCH 08/11] wifi: ath12k: fix endianness handling in QMI firmware m3 info
Alexander Wilhelm
alexander.wilhelm at westermo.com
Wed Jul 16 00:50:57 PDT 2025
Ensure proper endianness support for big-endian platforms by correcting
data types in the QMI firmware M3 info request message. Add missing byte
swaps wherever this structure is accessed or modified.
Fixes: d889913205cf ("wifi: ath12k: driver for Qualcomm Wi-Fi 7 devices")
Signed-off-by: Alexander Wilhelm <alexander.wilhelm at westermo.com>
---
drivers/net/wireless/ath/ath12k/qmi.c | 4 ++--
drivers/net/wireless/ath/ath12k/qmi.h | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/net/wireless/ath/ath12k/qmi.c b/drivers/net/wireless/ath/ath12k/qmi.c
index d18ffb86f7bc..5043d0c39b56 100644
--- a/drivers/net/wireless/ath/ath12k/qmi.c
+++ b/drivers/net/wireless/ath/ath12k/qmi.c
@@ -3198,8 +3198,8 @@ int ath12k_qmi_wlanfw_m3_info_send(struct ath12k_base *ab)
ath12k_err(ab, "failed to load m3 firmware: %d", ret);
return ret;
}
- req.addr = m3_mem->paddr;
- req.size = m3_mem->size;
+ req.addr = cpu_to_le64(m3_mem->paddr);
+ req.size = cpu_to_le32(m3_mem->size);
}
ret = qmi_txn_init(&ab->qmi.handle, &txn,
diff --git a/drivers/net/wireless/ath/ath12k/qmi.h b/drivers/net/wireless/ath/ath12k/qmi.h
index a48850ec0296..101d91131ef0 100644
--- a/drivers/net/wireless/ath/ath12k/qmi.h
+++ b/drivers/net/wireless/ath/ath12k/qmi.h
@@ -529,8 +529,8 @@ struct qmi_wlanfw_bdf_download_resp_msg_v01 {
#define QMI_WLANFW_M3_INFO_REQ_V01 0x003C
struct qmi_wlanfw_m3_info_req_msg_v01 {
- u64 addr;
- u32 size;
+ __le64 addr;
+ __le32 size;
};
struct qmi_wlanfw_m3_info_resp_msg_v01 {
--
2.34.1
More information about the ath12k
mailing list