[PATCH 09/11] wifi: ath12k: fix endianness handling in QMI firmware wlan mode

Alexander Wilhelm alexander.wilhelm at westermo.com
Wed Jul 16 00:50:58 PDT 2025


Ensure proper endianness support for big-endian platforms by correcting
data types in the QMI firmware wlan mode 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 | 2 +-
 drivers/net/wireless/ath/ath12k/qmi.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/ath/ath12k/qmi.c b/drivers/net/wireless/ath/ath12k/qmi.c
index 5043d0c39b56..2fdd5eb128d2 100644
--- a/drivers/net/wireless/ath/ath12k/qmi.c
+++ b/drivers/net/wireless/ath/ath12k/qmi.c
@@ -3242,7 +3242,7 @@ static int ath12k_qmi_wlanfw_mode_send(struct ath12k_base *ab,
 	struct qmi_txn txn;
 	int ret = 0;
 
-	req.mode = mode;
+	req.mode = cpu_to_le32(mode);
 	req.hw_debug_valid = 1;
 	req.hw_debug = 0;
 
diff --git a/drivers/net/wireless/ath/ath12k/qmi.h b/drivers/net/wireless/ath/ath12k/qmi.h
index 101d91131ef0..d05cd9b47911 100644
--- a/drivers/net/wireless/ath/ath12k/qmi.h
+++ b/drivers/net/wireless/ath/ath12k/qmi.h
@@ -552,7 +552,7 @@ struct qmi_wlanfw_m3_info_resp_msg_v01 {
 #define QMI_WLANFW_MAX_NUM_SHADOW_REG_V3_V01		60
 
 struct qmi_wlanfw_wlan_mode_req_msg_v01 {
-	u32 mode;
+	__le32 mode;
 	u8 hw_debug_valid;
 	u8 hw_debug;
 };
-- 
2.34.1




More information about the ath12k mailing list