mirror of
https://github.com/torvalds/linux.git
synced 2026-07-28 01:55:51 +02:00
wifi: iwlwifi: introduce iwl_system_statistics_notif_oper version 4
This new version includes Coex related statistics Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Link: https://patch.msgid.link/20260512082114.705fbeeb28d1.I4804d029fa76cfb8267f8c6bcac1ed237a8b3497@changeid Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
This commit is contained in:
parent
de04c81d48
commit
2db4f7712f
|
|
@ -585,6 +585,67 @@ struct iwl_stats_ntfy_per_phy_v1 {
|
|||
__le32 last_tx_ch_width_indx;
|
||||
} __packed; /* STATISTICS_NTFY_PER_PHY_API_S_VER_1 */
|
||||
|
||||
/**
|
||||
* struct iwl_stats_ntfy_coex - coex statistics
|
||||
*
|
||||
* @wifi_kill_cnt: count of wifi frames killed by BT
|
||||
* @wifi_tx_cts_kill_cnt: count of wifi Tx CTS frames killed by BT
|
||||
* @ttc2_ppdu_error_count: Count PPDU errors on TTC2 - BT Tx indication rises
|
||||
* within wifi Tx packet on non-shared antenna and wifi is NOT killed by
|
||||
* PTA/TCL.
|
||||
* @trc2_ppdu_error_count: count PPDU errors on TRC2 - BT Rx indication rises
|
||||
* within wifi Tx packet on non-shared antenna and wifi is NOT killed by
|
||||
* PTA/TCL
|
||||
* @rrc1_collision_count: count RRC1 - BT Rx indication rises within wifi Rx
|
||||
* packet on shared antenna
|
||||
* @rrc2_collision_count: count RRC2 - BT Rx indication rises within wifi Rx
|
||||
* packet on non-shared antenna
|
||||
* @rtc2_collision_count: count RTC2 - BT Tx indication rises within wifi Rx
|
||||
* packet on non-shared antenna
|
||||
* @reserved: reserved
|
||||
*/
|
||||
struct iwl_stats_ntfy_coex {
|
||||
__le16 wifi_kill_cnt;
|
||||
__le16 wifi_tx_cts_kill_cnt;
|
||||
__le16 ttc2_ppdu_error_count;
|
||||
__le16 trc2_ppdu_error_count;
|
||||
__le16 rrc1_collision_count;
|
||||
__le16 rrc2_collision_count;
|
||||
__le16 rtc2_collision_count;
|
||||
__le16 reserved;
|
||||
} __packed; /* STATISTICS_FW_NTFY_COEX_TELEMETRY_API_S_VER_1 */
|
||||
|
||||
/**
|
||||
* struct iwl_stats_ntfy_per_phy - per PHY statistics
|
||||
* @channel_load: channel load
|
||||
* @channel_load_by_us: device contribution to MCLM
|
||||
* @channel_load_not_by_us: other devices' contribution to MCLM
|
||||
* @clt: CLT HW timer (TIM_CH_LOAD2)
|
||||
* @act: active accumulator SW
|
||||
* @elp: elapsed time accumulator SW
|
||||
* @rx_detected_per_ch_width: number of deferred TX per channel width,
|
||||
* 0 - 20, 1/2/3 - 40/80/160
|
||||
* @success_per_ch_width: number of frames that got ACK/BACK/CTS
|
||||
* per channel BW. note, BACK counted as 1
|
||||
* @fail_per_ch_width: number of frames that didn't get ACK/BACK/CTS
|
||||
* per channel BW. note BACK counted as 1
|
||||
* @last_tx_ch_width_indx: last txed frame channel width index
|
||||
* @coex: coex related data
|
||||
*/
|
||||
struct iwl_stats_ntfy_per_phy {
|
||||
__le32 channel_load;
|
||||
__le32 channel_load_by_us;
|
||||
__le32 channel_load_not_by_us;
|
||||
__le32 clt;
|
||||
__le32 act;
|
||||
__le32 elp;
|
||||
__le32 rx_detected_per_ch_width[IWL_STATS_MAX_BW_INDEX];
|
||||
__le32 success_per_ch_width[IWL_STATS_MAX_BW_INDEX];
|
||||
__le32 fail_per_ch_width[IWL_STATS_MAX_BW_INDEX];
|
||||
__le32 last_tx_ch_width_indx;
|
||||
struct iwl_stats_ntfy_coex coex;
|
||||
} __packed; /* STATISTICS_NTFY_PER_PHY_API_S_VER_2 */
|
||||
|
||||
/* unknown channel load (due to not being active on channel) */
|
||||
#define IWL_STATS_UNKNOWN_CHANNEL_LOAD 0xffffffff
|
||||
|
||||
|
|
@ -614,6 +675,21 @@ struct iwl_system_statistics_notif_oper_v3 {
|
|||
struct iwl_stats_ntfy_per_sta per_sta[IWL_STATION_COUNT_MAX];
|
||||
} __packed; /* STATISTICS_FW_NTFY_OPERATIONAL_API_S_VER_3 */
|
||||
|
||||
/**
|
||||
* struct iwl_system_statistics_notif_oper - statistics notification
|
||||
*
|
||||
* @time_stamp: time when the notification is sent from firmware
|
||||
* @per_link: per link statistics, &struct iwl_stats_ntfy_per_link
|
||||
* @per_phy: per phy statistics, &struct iwl_stats_ntfy_per_phy_v1
|
||||
* @per_sta: per sta statistics, &struct iwl_stats_ntfy_per_sta
|
||||
*/
|
||||
struct iwl_system_statistics_notif_oper {
|
||||
__le32 time_stamp;
|
||||
struct iwl_stats_ntfy_per_link per_link[IWL_FW_MAX_LINKS];
|
||||
struct iwl_stats_ntfy_per_phy per_phy[IWL_STATS_MAX_PHY_OPERATIONAL];
|
||||
struct iwl_stats_ntfy_per_sta per_sta[IWL_STATION_COUNT_MAX];
|
||||
} __packed; /* STATISTICS_FW_NTFY_OPERATIONAL_API_S_VER_4 */
|
||||
|
||||
/**
|
||||
* struct iwl_system_statistics_part1_notif_oper - part1 stats notification
|
||||
*
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user