|
|
@@ -66,25 +66,25 @@ v13:
|
|
|
|
|
|
* cleanup includes
|
|
|
|
|
|
- ath10k-5.4/Kconfig | 10 +++
|
|
|
- ath10k-5.4/Makefile | 1 +
|
|
|
- ath10k-5.4/core.c | 22 +++++++
|
|
|
- ath10k-5.4/core.h | 9 ++-
|
|
|
- ath10k-5.4/hw.h | 1 +
|
|
|
- ath10k-5.4/leds.c | 103 ++++++++++++++++++++++++++++++
|
|
|
- ath10k-5.4/leds.h | 45 +++++++++++++
|
|
|
- ath10k-5.4/mac.c | 1 +
|
|
|
- ath10k-5.4/wmi-ops.h | 32 ++++++++++
|
|
|
- ath10k-5.4/wmi-tlv.c | 2 +
|
|
|
- ath10k-5.4/wmi.c | 54 ++++++++++++++++
|
|
|
- ath10k-5.4/wmi.h | 35 ++++++++++
|
|
|
+ ath10k-5.8/Kconfig | 10 +++
|
|
|
+ ath10k-5.8/Makefile | 1 +
|
|
|
+ ath10k-5.8/core.c | 22 +++++++
|
|
|
+ ath10k-5.8/core.h | 9 ++-
|
|
|
+ ath10k-5.8/hw.h | 1 +
|
|
|
+ ath10k-5.8/leds.c | 103 ++++++++++++++++++++++++++++++
|
|
|
+ ath10k-5.8/leds.h | 45 +++++++++++++
|
|
|
+ ath10k-5.8/mac.c | 1 +
|
|
|
+ ath10k-5.8/wmi-ops.h | 32 ++++++++++
|
|
|
+ ath10k-5.8/wmi-tlv.c | 2 +
|
|
|
+ ath10k-5.8/wmi.c | 54 ++++++++++++++++
|
|
|
+ ath10k-5.8/wmi.h | 35 ++++++++++
|
|
|
12 files changed, 314 insertions(+), 1 deletion(-)
|
|
|
- create mode 100644 ath10k-5.4/leds.c
|
|
|
- create mode 100644 ath10k-5.4/leds.h
|
|
|
+ create mode 100644 ath10k-5.8/leds.c
|
|
|
+ create mode 100644 ath10k-5.8/leds.h
|
|
|
|
|
|
---- a/ath10k-5.4/Kconfig
|
|
|
-+++ b/ath10k-5.4/Kconfig
|
|
|
-@@ -66,6 +66,16 @@ config ATH10K_DEBUGFS
|
|
|
+--- a/ath10k-5.8/Kconfig
|
|
|
++++ b/ath10k-5.8/Kconfig
|
|
|
+@@ -65,6 +65,16 @@ config ATH10K_DEBUGFS
|
|
|
|
|
|
If unsure, say Y to make it easier to debug problems.
|
|
|
|
|
|
@@ -101,19 +101,19 @@ v13:
|
|
|
config ATH10K_SPECTRAL
|
|
|
bool "Atheros ath10k spectral scan support"
|
|
|
depends on ATH10K_DEBUGFS
|
|
|
---- a/ath10k-5.4/Makefile
|
|
|
-+++ b/ath10k-5.4/Makefile
|
|
|
-@@ -19,6 +19,7 @@ ath10k_core-$(CONFIG_ATH10K_SPECTRAL) +=
|
|
|
+--- a/ath10k-5.8/Makefile
|
|
|
++++ b/ath10k-5.8/Makefile
|
|
|
+@@ -20,6 +20,7 @@ ath10k_core-$(CONFIG_ATH10K_SPECTRAL) +=
|
|
|
ath10k_core-$(CONFIG_NL80211_TESTMODE) += testmode.o
|
|
|
ath10k_core-$(CONFIG_ATH10K_TRACING) += trace.o
|
|
|
ath10k_core-$(CONFIG_THERMAL) += thermal.o
|
|
|
+ath10k_core-$(CONFIG_ATH10K_LEDS) += leds.o
|
|
|
ath10k_core-$(CONFIG_MAC80211_DEBUGFS) += debugfs_sta.o
|
|
|
ath10k_core-$(CONFIG_PM) += wow.o
|
|
|
- ath10k_core-$(CONFIG_DEV_COREDUMP) += coredump.o
|
|
|
---- a/ath10k-5.4/core.c
|
|
|
-+++ b/ath10k-5.4/core.c
|
|
|
-@@ -25,6 +25,7 @@
|
|
|
+ ath10k_core-$(CONFIG_ATH10K_CE) += ce.o
|
|
|
+--- a/ath10k-5.8/core.c
|
|
|
++++ b/ath10k-5.8/core.c
|
|
|
+@@ -26,6 +26,7 @@
|
|
|
#include "testmode.h"
|
|
|
#include "wmi-ops.h"
|
|
|
#include "coredump.h"
|
|
|
@@ -121,7 +121,7 @@ v13:
|
|
|
|
|
|
/* Disable ath10k-ct DBGLOG output by default */
|
|
|
unsigned int ath10k_debug_mask = ATH10K_DBG_NO_DBGLOG;
|
|
|
-@@ -67,6 +68,7 @@ static const struct ath10k_hw_params ath
|
|
|
+@@ -68,6 +69,7 @@ static const struct ath10k_hw_params ath
|
|
|
.dev_id = QCA988X_2_0_DEVICE_ID,
|
|
|
.bus = ATH10K_BUS_PCI,
|
|
|
.name = "qca988x hw2.0",
|
|
|
@@ -129,7 +129,7 @@ v13:
|
|
|
.patch_load_addr = QCA988X_HW_2_0_PATCH_LOAD_ADDR,
|
|
|
.uart_pin = 7,
|
|
|
.cc_wraparound_type = ATH10K_HW_CC_WRAP_SHIFTED_ALL,
|
|
|
-@@ -137,6 +139,7 @@ static const struct ath10k_hw_params ath
|
|
|
+@@ -138,6 +140,7 @@ static const struct ath10k_hw_params ath
|
|
|
.dev_id = QCA9887_1_0_DEVICE_ID,
|
|
|
.bus = ATH10K_BUS_PCI,
|
|
|
.name = "qca9887 hw1.0",
|
|
|
@@ -137,7 +137,7 @@ v13:
|
|
|
.patch_load_addr = QCA9887_HW_1_0_PATCH_LOAD_ADDR,
|
|
|
.uart_pin = 7,
|
|
|
.cc_wraparound_type = ATH10K_HW_CC_WRAP_SHIFTED_ALL,
|
|
|
-@@ -344,6 +347,7 @@ static const struct ath10k_hw_params ath
|
|
|
+@@ -347,6 +350,7 @@ static const struct ath10k_hw_params ath
|
|
|
.dev_id = QCA99X0_2_0_DEVICE_ID,
|
|
|
.bus = ATH10K_BUS_PCI,
|
|
|
.name = "qca99x0 hw2.0",
|
|
|
@@ -145,7 +145,7 @@ v13:
|
|
|
.patch_load_addr = QCA99X0_HW_2_0_PATCH_LOAD_ADDR,
|
|
|
.uart_pin = 7,
|
|
|
.otp_exe_param = 0x00000700,
|
|
|
-@@ -385,6 +389,7 @@ static const struct ath10k_hw_params ath
|
|
|
+@@ -388,6 +392,7 @@ static const struct ath10k_hw_params ath
|
|
|
.dev_id = QCA9984_1_0_DEVICE_ID,
|
|
|
.bus = ATH10K_BUS_PCI,
|
|
|
.name = "qca9984/qca9994 hw1.0",
|
|
|
@@ -153,7 +153,7 @@ v13:
|
|
|
.patch_load_addr = QCA9984_HW_1_0_PATCH_LOAD_ADDR,
|
|
|
.uart_pin = 7,
|
|
|
.cc_wraparound_type = ATH10K_HW_CC_WRAP_SHIFTED_EACH,
|
|
|
-@@ -433,6 +438,7 @@ static const struct ath10k_hw_params ath
|
|
|
+@@ -436,6 +441,7 @@ static const struct ath10k_hw_params ath
|
|
|
.dev_id = QCA9888_2_0_DEVICE_ID,
|
|
|
.bus = ATH10K_BUS_PCI,
|
|
|
.name = "qca9888 hw2.0",
|
|
|
@@ -161,7 +161,7 @@ v13:
|
|
|
.patch_load_addr = QCA9888_HW_2_0_PATCH_LOAD_ADDR,
|
|
|
.uart_pin = 7,
|
|
|
.cc_wraparound_type = ATH10K_HW_CC_WRAP_SHIFTED_EACH,
|
|
|
-@@ -3579,6 +3585,10 @@ int ath10k_core_start(struct ath10k *ar,
|
|
|
+@@ -3675,6 +3681,10 @@ int ath10k_core_start(struct ath10k *ar,
|
|
|
ath10k_wmi_check_apply_board_power_ctl_table(ar);
|
|
|
}
|
|
|
|
|
|
@@ -172,7 +172,7 @@ v13:
|
|
|
return 0;
|
|
|
|
|
|
err_hif_stop:
|
|
|
-@@ -3835,9 +3845,18 @@ static void ath10k_core_register_work(st
|
|
|
+@@ -3933,9 +3943,18 @@ static void ath10k_core_register_work(st
|
|
|
goto err_spectral_destroy;
|
|
|
}
|
|
|
|
|
|
@@ -191,7 +191,7 @@ v13:
|
|
|
err_spectral_destroy:
|
|
|
ath10k_spectral_destroy(ar);
|
|
|
err_debug_destroy:
|
|
|
-@@ -3897,6 +3916,8 @@ void ath10k_core_unregister(struct ath10
|
|
|
+@@ -3995,6 +4014,8 @@ void ath10k_core_unregister(struct ath10
|
|
|
if (!test_bit(ATH10K_FLAG_CORE_REGISTERED, &ar->dev_flags))
|
|
|
return;
|
|
|
|
|
|
@@ -200,8 +200,8 @@ v13:
|
|
|
ath10k_thermal_unregister(ar);
|
|
|
/* Stop spectral before unregistering from mac80211 to remove the
|
|
|
* relayfs debugfs file cleanly. Otherwise the parent debugfs tree
|
|
|
---- a/ath10k-5.4/core.h
|
|
|
-+++ b/ath10k-5.4/core.h
|
|
|
+--- a/ath10k-5.8/core.h
|
|
|
++++ b/ath10k-5.8/core.h
|
|
|
@@ -14,6 +14,7 @@
|
|
|
#include <linux/pci.h>
|
|
|
#include <linux/uuid.h>
|
|
|
@@ -210,7 +210,7 @@ v13:
|
|
|
|
|
|
#include "htt.h"
|
|
|
#include "htc.h"
|
|
|
-@@ -1476,6 +1477,13 @@ struct ath10k {
|
|
|
+@@ -1523,6 +1524,13 @@ struct ath10k {
|
|
|
} testmode;
|
|
|
|
|
|
struct {
|
|
|
@@ -222,11 +222,11 @@ v13:
|
|
|
+
|
|
|
+ struct {
|
|
|
/* protected by data_lock */
|
|
|
+ u32 rx_crc_err_drop;
|
|
|
u32 fw_crash_counter;
|
|
|
- u32 fw_warm_reset_counter;
|
|
|
---- a/ath10k-5.4/hw.h
|
|
|
-+++ b/ath10k-5.4/hw.h
|
|
|
-@@ -518,6 +518,7 @@ struct ath10k_hw_params {
|
|
|
+--- a/ath10k-5.8/hw.h
|
|
|
++++ b/ath10k-5.8/hw.h
|
|
|
+@@ -521,6 +521,7 @@ struct ath10k_hw_params {
|
|
|
const char *name;
|
|
|
u32 patch_load_addr;
|
|
|
int uart_pin;
|
|
|
@@ -235,7 +235,7 @@ v13:
|
|
|
|
|
|
/* Type of hw cycle counter wraparound logic, for more info
|
|
|
--- /dev/null
|
|
|
-+++ b/ath10k-5.4/leds.c
|
|
|
++++ b/ath10k-5.8/leds.c
|
|
|
@@ -0,0 +1,103 @@
|
|
|
+/*
|
|
|
+ * Copyright (c) 2005-2011 Atheros Communications Inc.
|
|
|
@@ -341,7 +341,7 @@ v13:
|
|
|
+}
|
|
|
+
|
|
|
--- /dev/null
|
|
|
-+++ b/ath10k-5.4/leds.h
|
|
|
++++ b/ath10k-5.8/leds.h
|
|
|
@@ -0,0 +1,41 @@
|
|
|
+/*
|
|
|
+ * Copyright (c) 2018, The Linux Foundation. All rights reserved.
|
|
|
@@ -384,9 +384,9 @@ v13:
|
|
|
+
|
|
|
+#endif
|
|
|
+#endif /* _LEDS_H_ */
|
|
|
---- a/ath10k-5.4/mac.c
|
|
|
-+++ b/ath10k-5.4/mac.c
|
|
|
-@@ -24,6 +24,7 @@
|
|
|
+--- a/ath10k-5.8/mac.c
|
|
|
++++ b/ath10k-5.8/mac.c
|
|
|
+@@ -25,6 +25,7 @@
|
|
|
#include "wmi-tlv.h"
|
|
|
#include "wmi-ops.h"
|
|
|
#include "wow.h"
|
|
|
@@ -394,9 +394,9 @@ v13:
|
|
|
|
|
|
/*********/
|
|
|
/* Rates */
|
|
|
---- a/ath10k-5.4/wmi-ops.h
|
|
|
-+++ b/ath10k-5.4/wmi-ops.h
|
|
|
-@@ -219,7 +219,10 @@ struct wmi_ops {
|
|
|
+--- a/ath10k-5.8/wmi-ops.h
|
|
|
++++ b/ath10k-5.8/wmi-ops.h
|
|
|
+@@ -226,7 +226,10 @@ struct wmi_ops {
|
|
|
struct sk_buff *(*gen_bb_timing)
|
|
|
(struct ath10k *ar,
|
|
|
const struct wmi_bb_timing_cfg_arg *arg);
|
|
|
@@ -407,7 +407,7 @@ v13:
|
|
|
};
|
|
|
|
|
|
int ath10k_wmi_cmd_send(struct ath10k *ar, struct sk_buff *skb, u32 cmd_id);
|
|
|
-@@ -1115,6 +1118,35 @@ ath10k_wmi_force_fw_hang(struct ath10k *
|
|
|
+@@ -1145,6 +1148,35 @@ ath10k_wmi_force_fw_hang(struct ath10k *
|
|
|
return ath10k_wmi_cmd_send(ar, skb, ar->wmi.cmd->force_fw_hang_cmdid);
|
|
|
}
|
|
|
|
|
|
@@ -443,9 +443,9 @@ v13:
|
|
|
static inline int
|
|
|
ath10k_wmi_dbglog_cfg(struct ath10k *ar, u64 module_enable, u32 log_level)
|
|
|
{
|
|
|
---- a/ath10k-5.4/wmi-tlv.c
|
|
|
-+++ b/ath10k-5.4/wmi-tlv.c
|
|
|
-@@ -4382,6 +4382,8 @@ static const struct wmi_ops wmi_tlv_ops
|
|
|
+--- a/ath10k-5.8/wmi-tlv.c
|
|
|
++++ b/ath10k-5.8/wmi-tlv.c
|
|
|
+@@ -4583,6 +4583,8 @@ static const struct wmi_ops wmi_tlv_ops
|
|
|
.gen_echo = ath10k_wmi_tlv_op_gen_echo,
|
|
|
.gen_vdev_spectral_conf = ath10k_wmi_tlv_op_gen_vdev_spectral_conf,
|
|
|
.gen_vdev_spectral_enable = ath10k_wmi_tlv_op_gen_vdev_spectral_enable,
|
|
|
@@ -454,9 +454,9 @@ v13:
|
|
|
};
|
|
|
|
|
|
static const struct wmi_peer_flags_map wmi_tlv_peer_flags_map = {
|
|
|
---- a/ath10k-5.4/wmi.c
|
|
|
-+++ b/ath10k-5.4/wmi.c
|
|
|
-@@ -8313,6 +8313,49 @@ ath10k_wmi_op_gen_peer_set_param(struct
|
|
|
+--- a/ath10k-5.8/wmi.c
|
|
|
++++ b/ath10k-5.8/wmi.c
|
|
|
+@@ -8412,6 +8412,49 @@ ath10k_wmi_op_gen_peer_set_param(struct
|
|
|
return skb;
|
|
|
}
|
|
|
|
|
|
@@ -506,7 +506,7 @@ v13:
|
|
|
static struct sk_buff *
|
|
|
ath10k_wmi_op_gen_set_psmode(struct ath10k *ar, u32 vdev_id,
|
|
|
enum wmi_sta_ps_mode psmode)
|
|
|
-@@ -10112,6 +10155,9 @@ static const struct wmi_ops wmi_ops = {
|
|
|
+@@ -10211,6 +10254,9 @@ static const struct wmi_ops wmi_ops = {
|
|
|
.fw_stats_fill = ath10k_wmi_main_op_fw_stats_fill,
|
|
|
.get_vdev_subtype = ath10k_wmi_op_get_vdev_subtype,
|
|
|
.gen_echo = ath10k_wmi_op_gen_echo,
|
|
|
@@ -516,7 +516,7 @@ v13:
|
|
|
/* .gen_bcn_tmpl not implemented */
|
|
|
/* .gen_prb_tmpl not implemented */
|
|
|
/* .gen_p2p_go_bcn_ie not implemented */
|
|
|
-@@ -10182,6 +10228,8 @@ static const struct wmi_ops wmi_10_1_ops
|
|
|
+@@ -10281,6 +10327,8 @@ static const struct wmi_ops wmi_10_1_ops
|
|
|
.fw_stats_fill = ath10k_wmi_10x_op_fw_stats_fill,
|
|
|
.get_vdev_subtype = ath10k_wmi_op_get_vdev_subtype,
|
|
|
.gen_echo = ath10k_wmi_op_gen_echo,
|
|
|
@@ -525,7 +525,7 @@ v13:
|
|
|
/* .gen_bcn_tmpl not implemented */
|
|
|
/* .gen_prb_tmpl not implemented */
|
|
|
/* .gen_p2p_go_bcn_ie not implemented */
|
|
|
-@@ -10261,6 +10309,8 @@ static const struct wmi_ops wmi_10_2_ops
|
|
|
+@@ -10360,6 +10408,8 @@ static const struct wmi_ops wmi_10_2_ops
|
|
|
.gen_delba_send = ath10k_wmi_op_gen_delba_send,
|
|
|
.fw_stats_fill = ath10k_wmi_10x_op_fw_stats_fill,
|
|
|
.get_vdev_subtype = ath10k_wmi_op_get_vdev_subtype,
|
|
|
@@ -534,7 +534,7 @@ v13:
|
|
|
/* .gen_pdev_enable_adaptive_cca not implemented */
|
|
|
};
|
|
|
|
|
|
-@@ -10332,6 +10382,8 @@ static const struct wmi_ops wmi_10_2_4_o
|
|
|
+@@ -10431,6 +10481,8 @@ static const struct wmi_ops wmi_10_2_4_o
|
|
|
ath10k_wmi_op_gen_pdev_enable_adaptive_cca,
|
|
|
.get_vdev_subtype = ath10k_wmi_10_2_4_op_get_vdev_subtype,
|
|
|
.gen_bb_timing = ath10k_wmi_10_2_4_op_gen_bb_timing,
|
|
|
@@ -543,7 +543,7 @@ v13:
|
|
|
/* .gen_bcn_tmpl not implemented */
|
|
|
/* .gen_prb_tmpl not implemented */
|
|
|
/* .gen_p2p_go_bcn_ie not implemented */
|
|
|
-@@ -10413,6 +10465,8 @@ static const struct wmi_ops wmi_10_4_ops
|
|
|
+@@ -10512,6 +10564,8 @@ static const struct wmi_ops wmi_10_4_ops
|
|
|
.gen_pdev_bss_chan_info_req = ath10k_wmi_10_2_op_gen_pdev_bss_chan_info,
|
|
|
.gen_echo = ath10k_wmi_op_gen_echo,
|
|
|
.gen_pdev_get_tpc_config = ath10k_wmi_10_2_4_op_gen_pdev_get_tpc_config,
|
|
|
@@ -552,9 +552,9 @@ v13:
|
|
|
};
|
|
|
|
|
|
int ath10k_wmi_attach(struct ath10k *ar)
|
|
|
---- a/ath10k-5.4/wmi.h
|
|
|
-+++ b/ath10k-5.4/wmi.h
|
|
|
-@@ -3110,6 +3110,41 @@ enum wmi_10_4_feature_mask {
|
|
|
+--- a/ath10k-5.8/wmi.h
|
|
|
++++ b/ath10k-5.8/wmi.h
|
|
|
+@@ -3121,6 +3121,41 @@ enum wmi_10_4_feature_mask {
|
|
|
|
|
|
};
|
|
|
|