mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-29 10:08:59 +00:00
93ae4353cd
ath11k is the upstream driver for Qualcomm 802.11ax radios, both for the internal AHB and PCI based cards. This commit does however only provide PCI support while AHB will follow but its SoC specific so it will require an OpenWrt target first. It differs a bit from ath10k as it requires stuff like QRTR, MHI and QMI helpers. PCI variant requires qrtr-mhi and mhi-bus which backports do provide, however we are dropping those in a patch as they will conflict with support for the AHB variant as that one requires qrtr-smd which in turn requires RPMSG and GLINK and its not feasable to provide those in backports as they are really SoC specific. QRTR and MHI in kernel 5.10 are not usable and backporting the changes is not easy as they have changed drastically from 5.10 to 5.15 ath11k will only be available on targets that use kernel 5.15. Signed-off-by: Robert Marko <robimarko@gmail.com>
342 lines
10 KiB
Diff
342 lines
10 KiB
Diff
From 93c1592889fca46d09d833455628bab05516cdbf Mon Sep 17 00:00:00 2001
|
|
From: Jeff Johnson <quic_jjohnson@quicinc.com>
|
|
Date: Wed, 14 Sep 2022 17:23:03 -0700
|
|
Subject: [PATCH] wifi: ath11k: Make QMI message rules const
|
|
|
|
Commit ff6d365898d4 ("soc: qcom: qmi: use const for struct
|
|
qmi_elem_info") allows QMI message encoding/decoding rules to be
|
|
const, so do that for ath11k.
|
|
|
|
Compile tested only.
|
|
|
|
Signed-off-by: Jeff Johnson <quic_jjohnson@quicinc.com>
|
|
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
|
|
Link: https://lore.kernel.org/r/20220915002303.12206-1-quic_jjohnson@quicinc.com
|
|
---
|
|
drivers/net/wireless/ath/ath11k/qmi.c | 72 +++++++++++++--------------
|
|
1 file changed, 36 insertions(+), 36 deletions(-)
|
|
|
|
--- a/drivers/net/wireless/ath/ath11k/qmi.c
|
|
+++ b/drivers/net/wireless/ath/ath11k/qmi.c
|
|
@@ -29,7 +29,7 @@ module_param_named(cold_boot_cal, ath11k
|
|
MODULE_PARM_DESC(cold_boot_cal,
|
|
"Decrease the channel switch time but increase the driver load time (Default: true)");
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_host_cap_req_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_host_cap_req_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_OPT_FLAG,
|
|
.elem_len = 1,
|
|
@@ -280,7 +280,7 @@ static struct qmi_elem_info qmi_wlanfw_h
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_host_cap_resp_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_host_cap_resp_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_STRUCT,
|
|
.elem_len = 1,
|
|
@@ -297,7 +297,7 @@ static struct qmi_elem_info qmi_wlanfw_h
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_ind_register_req_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_ind_register_req_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_OPT_FLAG,
|
|
.elem_len = 1,
|
|
@@ -522,7 +522,7 @@ static struct qmi_elem_info qmi_wlanfw_i
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_ind_register_resp_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_ind_register_resp_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_STRUCT,
|
|
.elem_len = 1,
|
|
@@ -558,7 +558,7 @@ static struct qmi_elem_info qmi_wlanfw_i
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_mem_cfg_s_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_mem_cfg_s_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_8_BYTE,
|
|
.elem_len = 1,
|
|
@@ -590,7 +590,7 @@ static struct qmi_elem_info qmi_wlanfw_m
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_mem_seg_s_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_mem_seg_s_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_4_BYTE,
|
|
.elem_len = 1,
|
|
@@ -632,7 +632,7 @@ static struct qmi_elem_info qmi_wlanfw_m
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_request_mem_ind_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_request_mem_ind_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_DATA_LEN,
|
|
.elem_len = 1,
|
|
@@ -659,7 +659,7 @@ static struct qmi_elem_info qmi_wlanfw_r
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_mem_seg_resp_s_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_mem_seg_resp_s_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_8_BYTE,
|
|
.elem_len = 1,
|
|
@@ -699,7 +699,7 @@ static struct qmi_elem_info qmi_wlanfw_m
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_respond_mem_req_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_respond_mem_req_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_DATA_LEN,
|
|
.elem_len = 1,
|
|
@@ -726,7 +726,7 @@ static struct qmi_elem_info qmi_wlanfw_r
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_respond_mem_resp_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_respond_mem_resp_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_STRUCT,
|
|
.elem_len = 1,
|
|
@@ -744,7 +744,7 @@ static struct qmi_elem_info qmi_wlanfw_r
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_cap_req_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_cap_req_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_EOTI,
|
|
.array_type = NO_ARRAY,
|
|
@@ -752,7 +752,7 @@ static struct qmi_elem_info qmi_wlanfw_c
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_device_info_req_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_device_info_req_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_EOTI,
|
|
.array_type = NO_ARRAY,
|
|
@@ -760,7 +760,7 @@ static struct qmi_elem_info qmi_wlanfw_d
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlfw_device_info_resp_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlfw_device_info_resp_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_STRUCT,
|
|
.elem_len = 1,
|
|
@@ -814,7 +814,7 @@ static struct qmi_elem_info qmi_wlfw_dev
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_rf_chip_info_s_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_rf_chip_info_s_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_4_BYTE,
|
|
.elem_len = 1,
|
|
@@ -840,7 +840,7 @@ static struct qmi_elem_info qmi_wlanfw_r
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_rf_board_info_s_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_rf_board_info_s_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_4_BYTE,
|
|
.elem_len = 1,
|
|
@@ -857,7 +857,7 @@ static struct qmi_elem_info qmi_wlanfw_r
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_soc_info_s_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_soc_info_s_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_4_BYTE,
|
|
.elem_len = 1,
|
|
@@ -873,7 +873,7 @@ static struct qmi_elem_info qmi_wlanfw_s
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_fw_version_info_s_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_fw_version_info_s_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_4_BYTE,
|
|
.elem_len = 1,
|
|
@@ -899,7 +899,7 @@ static struct qmi_elem_info qmi_wlanfw_f
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_cap_resp_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_cap_resp_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_STRUCT,
|
|
.elem_len = 1,
|
|
@@ -1100,7 +1100,7 @@ static struct qmi_elem_info qmi_wlanfw_c
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_bdf_download_req_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_bdf_download_req_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_1_BYTE,
|
|
.elem_len = 1,
|
|
@@ -1235,7 +1235,7 @@ static struct qmi_elem_info qmi_wlanfw_b
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_bdf_download_resp_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_bdf_download_resp_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_STRUCT,
|
|
.elem_len = 1,
|
|
@@ -1253,7 +1253,7 @@ static struct qmi_elem_info qmi_wlanfw_b
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_m3_info_req_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_m3_info_req_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_8_BYTE,
|
|
.elem_len = 1,
|
|
@@ -1277,7 +1277,7 @@ static struct qmi_elem_info qmi_wlanfw_m
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_m3_info_resp_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_m3_info_resp_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_STRUCT,
|
|
.elem_len = 1,
|
|
@@ -1294,7 +1294,7 @@ static struct qmi_elem_info qmi_wlanfw_m
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_ce_tgt_pipe_cfg_s_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_ce_tgt_pipe_cfg_s_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_4_BYTE,
|
|
.elem_len = 1,
|
|
@@ -1347,7 +1347,7 @@ static struct qmi_elem_info qmi_wlanfw_c
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_ce_svc_pipe_cfg_s_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_ce_svc_pipe_cfg_s_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_4_BYTE,
|
|
.elem_len = 1,
|
|
@@ -1382,7 +1382,7 @@ static struct qmi_elem_info qmi_wlanfw_c
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_shadow_reg_cfg_s_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_shadow_reg_cfg_s_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_2_BYTE,
|
|
.elem_len = 1,
|
|
@@ -1406,7 +1406,7 @@ static struct qmi_elem_info qmi_wlanfw_s
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_shadow_reg_v2_cfg_s_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_shadow_reg_v2_cfg_s_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_4_BYTE,
|
|
.elem_len = 1,
|
|
@@ -1423,7 +1423,7 @@ static struct qmi_elem_info qmi_wlanfw_s
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_wlan_mode_req_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_wlan_mode_req_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_UNSIGNED_4_BYTE,
|
|
.elem_len = 1,
|
|
@@ -1458,7 +1458,7 @@ static struct qmi_elem_info qmi_wlanfw_w
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_wlan_mode_resp_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_wlan_mode_resp_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_STRUCT,
|
|
.elem_len = 1,
|
|
@@ -1476,7 +1476,7 @@ static struct qmi_elem_info qmi_wlanfw_w
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_wlan_cfg_req_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_wlan_cfg_req_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_OPT_FLAG,
|
|
.elem_len = 1,
|
|
@@ -1615,7 +1615,7 @@ static struct qmi_elem_info qmi_wlanfw_w
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_wlan_cfg_resp_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_wlan_cfg_resp_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_STRUCT,
|
|
.elem_len = 1,
|
|
@@ -1632,28 +1632,28 @@ static struct qmi_elem_info qmi_wlanfw_w
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_mem_ready_ind_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_mem_ready_ind_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_EOTI,
|
|
.array_type = NO_ARRAY,
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_fw_ready_ind_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_fw_ready_ind_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_EOTI,
|
|
.array_type = NO_ARRAY,
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_cold_boot_cal_done_ind_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_cold_boot_cal_done_ind_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_EOTI,
|
|
.array_type = NO_ARRAY,
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_wlan_ini_req_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_wlan_ini_req_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_OPT_FLAG,
|
|
.elem_len = 1,
|
|
@@ -1679,7 +1679,7 @@ static struct qmi_elem_info qmi_wlanfw_w
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlanfw_wlan_ini_resp_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlanfw_wlan_ini_resp_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_STRUCT,
|
|
.elem_len = 1,
|
|
@@ -1697,7 +1697,7 @@ static struct qmi_elem_info qmi_wlanfw_w
|
|
},
|
|
};
|
|
|
|
-static struct qmi_elem_info qmi_wlfw_fw_init_done_ind_msg_v01_ei[] = {
|
|
+static const struct qmi_elem_info qmi_wlfw_fw_init_done_ind_msg_v01_ei[] = {
|
|
{
|
|
.data_type = QMI_EOTI,
|
|
.array_type = NO_ARRAY,
|