ath10k-ct: update to version 7.2
Update to Git HEAD (2026-07-31) and switch to 7.2 kernel based driver. We also introduced a new patch 204-* to correct the driver version number. Upstream merged patches: - 005-ath10k-ct-fix-missing-prototypes-warnings-on-6.12-ke.patch Tested on QCA9887 and IPQ4019. Signed-off-by: Shiji Yang <yangshiji66@outlook.com> Link: https://github.com/openwrt/openwrt/pull/24529 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
parent
0e371752ae
commit
70b3f992b8
10 changed files with 60 additions and 120 deletions
|
|
@ -8,14 +8,14 @@ PKG_LICENSE_FILES:=
|
|||
|
||||
PKG_SOURCE_URL:=https://github.com/greearb/ath10k-ct.git
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_DATE:=2025-12-01
|
||||
PKG_SOURCE_VERSION:=bb84e1597474a6db26f7681d6765fd3e69fff37e
|
||||
PKG_MIRROR_HASH:=76a950c4c5f02128f4225955b1ca0d1d8f6c68c3b0918c4bc2d1265698e939a6
|
||||
PKG_SOURCE_DATE:=2026-07-31
|
||||
PKG_SOURCE_VERSION:=fcbdb70debc261f9df6734bbb76d81cdc88e0e26
|
||||
PKG_MIRROR_HASH:=3bfcb2c8bc08902b95de16593b9d757e8c48f8891bd8ecd0934af14789294f37
|
||||
|
||||
# Build the 6.14 ath10k-ct driver version.
|
||||
# Build the 7.2 ath10k-ct driver version.
|
||||
# Probably this should match as closely as
|
||||
# possible to whatever mac80211 backports version is being used.
|
||||
CT_KVER="-6.18"
|
||||
CT_KVER="-7.2"
|
||||
|
||||
PKG_MAINTAINER:=Ben Greear <greearb@candelatech.com>
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
--- a/ath10k-6.18/mac.c
|
||||
+++ b/ath10k-6.18/mac.c
|
||||
@@ -11686,7 +11686,6 @@ int ath10k_mac_register(struct ath10k *a
|
||||
--- a/ath10k-7.2/mac.c
|
||||
+++ b/ath10k-7.2/mac.c
|
||||
@@ -11684,7 +11684,6 @@ int ath10k_mac_register(struct ath10k *a
|
||||
ar->hw->wiphy->n_cipher_suites = ar->hw_params.n_cipher_suites;
|
||||
|
||||
wiphy_ext_feature_set(ar->hw->wiphy, NL80211_EXT_FEATURE_CQM_RSSI_LIST);
|
||||
|
|
|
|||
|
|
@ -1,79 +0,0 @@
|
|||
From: Shiji Yang <yangshiji66@outlook.com>
|
||||
Date: Mon, 28 Apr 2025 23:40:15 +0800
|
||||
Subject: [PATCH] ath10k-ct: fix missing-prototypes warnings on 6.12 kernel
|
||||
|
||||
Fix various missing-prototypes warnings by:
|
||||
|
||||
* Mark functions only used in current source file as static.
|
||||
* Comment out unused functions.
|
||||
|
||||
/workspaces/openwrt/build_dir/target-x86_64_musl/linux-x86_64/ath10k-ct-regular/ath10k-ct-2025.03.14~63f5b605/ath10k-6.18/debug.c:425:6: error: no previous prototype for 'ath10k_debug_fw_ratepwr_table_process' [-Werror=missing-prototypes]
|
||||
425 | void ath10k_debug_fw_ratepwr_table_process(struct ath10k *ar, struct sk_buff *skb)
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
/workspaces/openwrt/build_dir/target-x86_64_musl/linux-x86_64/ath10k-ct-regular/ath10k-ct-2025.03.14~63f5b605/ath10k-6.18/debug.c:437:6: error: no previous prototype for 'ath10k_debug_fw_powerctl_table_process' [-Werror=missing-prototypes]
|
||||
437 | void ath10k_debug_fw_powerctl_table_process(struct ath10k *ar, struct sk_buff *skb)
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
/workspaces/openwrt/build_dir/target-x86_64_musl/linux-x86_64/ath10k-ct-regular/ath10k-ct-2025.03.14~63f5b605/ath10k-6.18/debug.c:884:5: error: no previous prototype for 'ath10k_refresh_target_pdev_ext_ct_stats' [-Werror=missing-prototypes]
|
||||
884 | int ath10k_refresh_target_pdev_ext_ct_stats(struct ath10k *ar)
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
/workspaces/openwrt/build_dir/target-x86_64_musl/linux-x86_64/ath10k-ct-regular/ath10k-ct-2025.03.14~63f5b605/ath10k-6.18/htt_tx.c:1190:6: error: no previous prototype for 'ieee80211_is_robust_mgmt_frame_tx' [-Werror=missing-prototypes]
|
||||
1190 | bool ieee80211_is_robust_mgmt_frame_tx(struct ieee80211_hdr *hdr)
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
/workspaces/openwrt/build_dir/target-x86_64_musl/linux-x86_64/ath10k-ct-regular/ath10k-ct-2025.03.14~63f5b605/ath10k-6.18/wmi.c:3203:5: error: no previous prototype for 'ath10k_wmi_event_txbf_cv_mesg' [-Werror=missing-prototypes]
|
||||
3203 | int ath10k_wmi_event_txbf_cv_mesg(struct ath10k *ar, struct sk_buff *skb)
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
|
||||
---
|
||||
ath10k-6.18/debug.c | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
--- a/ath10k-6.18/debug.c
|
||||
+++ b/ath10k-6.18/debug.c
|
||||
@@ -424,6 +424,7 @@ static void ath10k_debug_fw_stats_reset(
|
||||
spin_unlock_bh(&ar->data_lock);
|
||||
}
|
||||
|
||||
+/*
|
||||
void ath10k_debug_fw_ratepwr_table_process(struct ath10k *ar, struct sk_buff *skb)
|
||||
{
|
||||
size_t sz = skb->len;
|
||||
@@ -447,6 +448,7 @@ void ath10k_debug_fw_powerctl_table_proc
|
||||
memcpy(ar->debug.powerctl_tbl.data, skb->data, sz);
|
||||
complete(&ar->debug.powerctl_tbl_complete);
|
||||
}
|
||||
+*/
|
||||
|
||||
void ath10k_debug_fw_stats_process(struct ath10k *ar, struct sk_buff *skb)
|
||||
{
|
||||
@@ -883,7 +885,7 @@ static int ath10k_refresh_target_rx_reor
|
||||
return 0; /* fail silently if firmware does not support this option. */
|
||||
}
|
||||
|
||||
-int ath10k_refresh_target_pdev_ext_ct_stats(struct ath10k *ar)
|
||||
+static int ath10k_refresh_target_pdev_ext_ct_stats(struct ath10k *ar)
|
||||
{
|
||||
if (test_bit(ATH10K_FW_FEATURE_CUST_STATS_CT,
|
||||
ar->running_fw->fw_file.fw_features))
|
||||
--- a/ath10k-6.18/htt_tx.c
|
||||
+++ b/ath10k-6.18/htt_tx.c
|
||||
@@ -1189,7 +1189,7 @@ static u8 ath10k_htt_tx_get_tid(struct s
|
||||
* since we do tx hw crypt, and it won't actually be encrypted even when this flag is
|
||||
* set.
|
||||
*/
|
||||
-bool ieee80211_is_robust_mgmt_frame_tx(struct ieee80211_hdr *hdr)
|
||||
+static bool ieee80211_is_robust_mgmt_frame_tx(struct ieee80211_hdr *hdr)
|
||||
{
|
||||
if (ieee80211_is_disassoc(hdr->frame_control) ||
|
||||
ieee80211_is_deauth(hdr->frame_control))
|
||||
--- a/ath10k-6.18/wmi.c
|
||||
+++ b/ath10k-6.18/wmi.c
|
||||
@@ -3206,7 +3206,7 @@ printme:
|
||||
return 0;
|
||||
}
|
||||
|
||||
-int ath10k_wmi_event_txbf_cv_mesg(struct ath10k *ar, struct sk_buff *skb)
|
||||
+static int ath10k_wmi_event_txbf_cv_mesg(struct ath10k *ar, struct sk_buff *skb)
|
||||
{
|
||||
struct wmi_txbf_cv_event *ev;
|
||||
|
||||
|
|
@ -9,14 +9,14 @@ traffic.
|
|||
|
||||
Signed-off-by: Mathias Kresin <dev@kresin.me>
|
||||
---
|
||||
ath10k-6.18/core.h | 4 ++++
|
||||
ath10k-6.18/leds.c | 4 +---
|
||||
ath10k-6.18/mac.c | 2 +-
|
||||
3 files changed, 6 insertions(+), 4 deletions(-)
|
||||
ath10k-7.2/core.h | 4 ++++
|
||||
ath10k-7.2/leds.c | 1 +
|
||||
ath10k-7.2/mac.c | 2 +-
|
||||
3 files changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/ath10k-6.18/core.h
|
||||
+++ b/ath10k-6.18/core.h
|
||||
@@ -1712,6 +1712,10 @@ struct ath10k {
|
||||
--- a/ath10k-7.2/core.h
|
||||
+++ b/ath10k-7.2/core.h
|
||||
@@ -1715,6 +1715,10 @@ struct ath10k {
|
||||
u8 csi_data[4096];
|
||||
u16 csi_data_len;
|
||||
|
||||
|
|
@ -27,20 +27,19 @@ Signed-off-by: Mathias Kresin <dev@kresin.me>
|
|||
/* must be last */
|
||||
u8 drv_priv[] __aligned(sizeof(void *));
|
||||
};
|
||||
--- a/ath10k-6.18/leds.c
|
||||
+++ b/ath10k-6.18/leds.c
|
||||
@@ -69,7 +69,7 @@ int ath10k_leds_register(struct ath10k *
|
||||
--- a/ath10k-7.2/leds.c
|
||||
+++ b/ath10k-7.2/leds.c
|
||||
@@ -64,6 +64,7 @@ int ath10k_leds_register(struct ath10k *
|
||||
|
||||
ar->leds.cdev.name = ar->leds.label;
|
||||
ar->leds.cdev.brightness_set_blocking = ath10k_leds_set_brightness_blocking;
|
||||
- ar->leds.cdev.default_trigger = ar->leds.wifi_led.default_trigger;
|
||||
+ ar->leds.cdev.default_trigger = ar->led_default_trigger;
|
||||
|
||||
ret = led_classdev_register(wiphy_dev(ar->hw->wiphy), &ar->leds.cdev);
|
||||
if (ret)
|
||||
--- a/ath10k-6.18/mac.c
|
||||
+++ b/ath10k-6.18/mac.c
|
||||
@@ -11690,7 +11690,7 @@ int ath10k_mac_register(struct ath10k *a
|
||||
--- a/ath10k-7.2/mac.c
|
||||
+++ b/ath10k-7.2/mac.c
|
||||
@@ -11688,7 +11688,7 @@ int ath10k_mac_register(struct ath10k *a
|
||||
ar->hw->weight_multiplier = ATH10K_AIRTIME_WEIGHT_MULTIPLIER;
|
||||
|
||||
#ifdef CPTCFG_MAC80211_LEDS
|
||||
|
|
|
|||
|
|
@ -0,0 +1,20 @@
|
|||
From: Shiji Yang <yangshiji66@outlook.com>
|
||||
Date: Thu, 26 Mar 2026 22:44:28 +0800
|
||||
Subject: [PATCH] ath10k: correct driver version number
|
||||
|
||||
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
|
||||
---
|
||||
ath10k-7.2/pci.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
--- a/ath10k-7.2/pci.c
|
||||
+++ b/ath10k-7.2/pci.c
|
||||
@@ -3872,7 +3872,7 @@ static int __ath10k_pci_probe(struct pci
|
||||
int (*pci_hard_reset)(struct ath10k *ar);
|
||||
u32 (*targ_cpu_to_ce_addr)(struct ath10k *ar, u32 addr);
|
||||
|
||||
- printk(KERN_INFO "ath10k 6.15 driver, optimized for CT firmware, probing pci device: 0x%x.\n",
|
||||
+ printk(KERN_INFO "ath10k 7.2 driver, optimized for CT firmware, probing pci device: 0x%x.\n",
|
||||
pci_dev->device);
|
||||
|
||||
switch (pci_dev->device) {
|
||||
|
|
@ -7,12 +7,12 @@ frames from the hardware queue. Only developers need to care about it.
|
|||
|
||||
Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
|
||||
---
|
||||
ath10k-6.18/mac.c | 8 ++++----
|
||||
ath10k-7.2/mac.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
--- a/ath10k-6.18/mac.c
|
||||
+++ b/ath10k-6.18/mac.c
|
||||
@@ -9112,12 +9112,12 @@ static void ath10k_flush(struct ieee8021
|
||||
--- a/ath10k-7.2/mac.c
|
||||
+++ b/ath10k-7.2/mac.c
|
||||
@@ -9111,12 +9111,12 @@ static void ath10k_flush(struct ieee8021
|
||||
if (vif) {
|
||||
arvif = (void *)vif->drv_priv;
|
||||
vid = arvif->vdev_id;
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
--- a/ath10k-6.18/wmi.h
|
||||
+++ b/ath10k-6.18/wmi.h
|
||||
--- a/ath10k-7.2/wmi.h
|
||||
+++ b/ath10k-7.2/wmi.h
|
||||
@@ -6310,7 +6310,7 @@ struct qca9880_set_ctl_table_cmd {
|
||||
__le32 ctl_len; /* in bytes. This may be ignored in firmware,
|
||||
* make sure ctl_info data is sizeof(qca9880_power_ctl) */
|
||||
/** ctl array (len adjusted to number of words) */
|
||||
- __le32 ctl_info[1]; /* data would be the qca9880_power_ctl table above */
|
||||
- __le32 *ctl_info; /* data would be the qca9880_power_ctl table above */
|
||||
+ __le32 ctl_info[]; /* data would be the qca9880_power_ctl table above */
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
--- a/ath10k-6.18/htt.h
|
||||
+++ b/ath10k-6.18/htt.h
|
||||
--- a/ath10k-7.2/htt.h
|
||||
+++ b/ath10k-7.2/htt.h
|
||||
@@ -238,7 +238,11 @@ enum htt_rx_ring_flags {
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
--- a/ath10k-6.18/pci.c
|
||||
+++ b/ath10k-6.18/pci.c
|
||||
@@ -133,7 +133,11 @@ static const struct ce_attr pci_host_ce_
|
||||
--- a/ath10k-7.2/pci.c
|
||||
+++ b/ath10k-7.2/pci.c
|
||||
@@ -132,7 +132,11 @@ static const struct ce_attr pci_host_ce_
|
||||
.flags = CE_ATTR_FLAGS,
|
||||
.src_nentries = 0,
|
||||
.src_sz_max = 2048,
|
||||
|
|
@ -12,7 +12,7 @@
|
|||
.recv_cb = ath10k_pci_htt_htc_rx_cb,
|
||||
},
|
||||
|
||||
@@ -142,7 +146,11 @@ static const struct ce_attr pci_host_ce_
|
||||
@@ -141,7 +145,11 @@ static const struct ce_attr pci_host_ce_
|
||||
.flags = CE_ATTR_FLAGS,
|
||||
.src_nentries = 0,
|
||||
.src_sz_max = 2048,
|
||||
|
|
@ -24,7 +24,7 @@
|
|||
.recv_cb = ath10k_pci_htc_rx_cb,
|
||||
},
|
||||
|
||||
@@ -169,7 +177,11 @@ static const struct ce_attr pci_host_ce_
|
||||
@@ -168,7 +176,11 @@ static const struct ce_attr pci_host_ce_
|
||||
.flags = CE_ATTR_FLAGS,
|
||||
.src_nentries = 0,
|
||||
.src_sz_max = 512,
|
||||
|
|
@ -36,7 +36,7 @@
|
|||
.recv_cb = ath10k_pci_htt_rx_cb,
|
||||
},
|
||||
|
||||
@@ -194,7 +206,11 @@ static const struct ce_attr pci_host_ce_
|
||||
@@ -193,7 +205,11 @@ static const struct ce_attr pci_host_ce_
|
||||
.flags = CE_ATTR_FLAGS,
|
||||
.src_nentries = 0,
|
||||
.src_sz_max = 2048,
|
||||
|
|
|
|||
|
|
@ -13,12 +13,12 @@ own loss detection mechanism.
|
|||
|
||||
Signed-off-by: David Bauer <mail@david-bauer.net>
|
||||
---
|
||||
ath10k-6.18/mac.c | 1 -
|
||||
ath10k-7.2/mac.c | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
--- a/ath10k-6.18/mac.c
|
||||
+++ b/ath10k-6.18/mac.c
|
||||
@@ -11375,7 +11375,6 @@ int ath10k_mac_register(struct ath10k *a
|
||||
--- a/ath10k-7.2/mac.c
|
||||
+++ b/ath10k-7.2/mac.c
|
||||
@@ -11373,7 +11373,6 @@ int ath10k_mac_register(struct ath10k *a
|
||||
ieee80211_hw_set(ar->hw, CHANCTX_STA_CSA);
|
||||
ieee80211_hw_set(ar->hw, QUEUE_CONTROL);
|
||||
ieee80211_hw_set(ar->hw, SUPPORTS_TX_FRAG);
|
||||
|
|
|
|||
Loading…
Reference in a new issue