From: Anilkumar Kolli <akolli@xxxxxxxxxxxxxx>
Add a new hw_param full_monitor_mode to enable full monitor support
for
QCN9074. HTT_H2T_MSG_TYPE_RX_FULL_MONITOR_MODE cmd is sent to the
firmware to enable the full monitor mode.
Tested-on: QCN9074 hw1.0 PCI
WLAN.HK.2.4.0.1-01734-QCAHKSWPL_SILICONZ-1
Signed-off-by: Anilkumar Kolli <akolli@xxxxxxxxxxxxxx>
Signed-off-by: Jouni Malinen <jouni@xxxxxxxxxxxxxx>
---
drivers/net/wireless/ath/ath11k/core.c | 4 ++
drivers/net/wireless/ath/ath11k/dp.h | 74
+++++++++++++++++++++++++
drivers/net/wireless/ath/ath11k/dp_tx.c | 48 ++++++++++++++++
drivers/net/wireless/ath/ath11k/dp_tx.h | 2 +
drivers/net/wireless/ath/ath11k/hw.h | 1 +
5 files changed, 129 insertions(+)
diff --git a/drivers/net/wireless/ath/ath11k/core.c
b/drivers/net/wireless/ath/ath11k/core.c
index 969bf1a590d9..3179495cb3c9 100644
--- a/drivers/net/wireless/ath/ath11k/core.c
+++ b/drivers/net/wireless/ath/ath11k/core.c
@@ -65,6 +65,7 @@ static const struct ath11k_hw_params
ath11k_hw_params[] = {
BIT(NL80211_IFTYPE_AP) |
BIT(NL80211_IFTYPE_MESH_POINT),
.supports_monitor = true,
+ .full_monitor_mode = false,
.supports_shadow_regs = false,
.idle_ps = false,
.cold_boot_calib = true,
@@ -106,6 +107,7 @@ static const struct ath11k_hw_params
ath11k_hw_params[] = {
BIT(NL80211_IFTYPE_AP) |
BIT(NL80211_IFTYPE_MESH_POINT),
.supports_monitor = true,
+ .full_monitor_mode = false,
.supports_shadow_regs = false,
.idle_ps = false,
.cold_boot_calib = true,
@@ -146,6 +148,7 @@ static const struct ath11k_hw_params
ath11k_hw_params[] = {
.interface_modes = BIT(NL80211_IFTYPE_STATION) |
BIT(NL80211_IFTYPE_AP),
.supports_monitor = false,
+ .full_monitor_mode = false,
.supports_shadow_regs = true,
.idle_ps = true,
.cold_boot_calib = false,
@@ -184,6 +187,7 @@ static const struct ath11k_hw_params
ath11k_hw_params[] = {
BIT(NL80211_IFTYPE_AP) |
BIT(NL80211_IFTYPE_MESH_POINT),
.supports_monitor = true,
+ .full_monitor_mode = true,
.supports_shadow_regs = false,
.idle_ps = false,
.cold_boot_calib = false,