ath10k: split fw pdev stats parsing
This will make it easier to implement fw stats parsing for firmware 10.2. This also renames a few structures for consistency. Signed-off-by: Michal Kazior <michal.kazior@tieto.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
This commit is contained in:

committed by
Kalle Valo

parent
d63955b33b
commit
b91251fbe8
@@ -2946,7 +2946,7 @@ struct wmi_pdev_set_wmm_params_arg {
|
||||
struct wmi_wmm_params_arg ac_vo;
|
||||
};
|
||||
|
||||
struct wal_dbg_tx_stats {
|
||||
struct wmi_pdev_stats_tx {
|
||||
/* Num HTT cookies queued to dispatch list */
|
||||
__le32 comp_queued;
|
||||
|
||||
@@ -3016,7 +3016,7 @@ struct wal_dbg_tx_stats {
|
||||
__le32 txop_ovf;
|
||||
} __packed;
|
||||
|
||||
struct wal_dbg_rx_stats {
|
||||
struct wmi_pdev_stats_rx {
|
||||
/* Cnts any change in ring routing mid-ppdu */
|
||||
__le32 mid_ppdu_route_change;
|
||||
|
||||
@@ -3050,17 +3050,11 @@ struct wal_dbg_rx_stats {
|
||||
__le32 mpdu_errs;
|
||||
} __packed;
|
||||
|
||||
struct wal_dbg_peer_stats {
|
||||
struct wmi_pdev_stats_peer {
|
||||
/* REMOVE THIS ONCE REAL PEER STAT COUNTERS ARE ADDED */
|
||||
__le32 dummy;
|
||||
} __packed;
|
||||
|
||||
struct wal_dbg_stats {
|
||||
struct wal_dbg_tx_stats tx;
|
||||
struct wal_dbg_rx_stats rx;
|
||||
struct wal_dbg_peer_stats peer;
|
||||
} __packed;
|
||||
|
||||
enum wmi_stats_id {
|
||||
WMI_REQUEST_PEER_STAT = 0x01,
|
||||
WMI_REQUEST_AP_STAT = 0x02
|
||||
@@ -3131,19 +3125,24 @@ struct wmi_stats_event {
|
||||
* PDEV statistics
|
||||
* TODO: add all PDEV stats here
|
||||
*/
|
||||
struct wmi_pdev_stats {
|
||||
__le32 chan_nf; /* Channel noise floor */
|
||||
__le32 tx_frame_count; /* TX frame count */
|
||||
__le32 rx_frame_count; /* RX frame count */
|
||||
__le32 rx_clear_count; /* rx clear count */
|
||||
__le32 cycle_count; /* cycle count */
|
||||
__le32 phy_err_count; /* Phy error count */
|
||||
__le32 chan_tx_pwr; /* channel tx power */
|
||||
struct wal_dbg_stats wal; /* WAL dbg stats */
|
||||
struct wmi_pdev_stats_base {
|
||||
__le32 chan_nf;
|
||||
__le32 tx_frame_count;
|
||||
__le32 rx_frame_count;
|
||||
__le32 rx_clear_count;
|
||||
__le32 cycle_count;
|
||||
__le32 phy_err_count;
|
||||
__le32 chan_tx_pwr;
|
||||
} __packed;
|
||||
|
||||
struct wmi_10x_pdev_stats {
|
||||
struct wmi_pdev_stats old;
|
||||
struct wmi_pdev_stats {
|
||||
struct wmi_pdev_stats_base base;
|
||||
struct wmi_pdev_stats_tx tx;
|
||||
struct wmi_pdev_stats_rx rx;
|
||||
struct wmi_pdev_stats_peer peer;
|
||||
} __packed;
|
||||
|
||||
struct wmi_pdev_stats_extra {
|
||||
__le32 ack_rx_bad;
|
||||
__le32 rts_bad;
|
||||
__le32 rts_good;
|
||||
@@ -3152,6 +3151,14 @@ struct wmi_10x_pdev_stats {
|
||||
__le32 mib_int_count;
|
||||
} __packed;
|
||||
|
||||
struct wmi_10x_pdev_stats {
|
||||
struct wmi_pdev_stats_base base;
|
||||
struct wmi_pdev_stats_tx tx;
|
||||
struct wmi_pdev_stats_rx rx;
|
||||
struct wmi_pdev_stats_peer peer;
|
||||
struct wmi_pdev_stats_extra extra;
|
||||
} __packed;
|
||||
|
||||
/*
|
||||
* VDEV statistics
|
||||
* TODO: add all VDEV stats here
|
||||
@@ -4772,8 +4779,14 @@ int ath10k_wmi_cmd_send_nowait(struct ath10k *ar, struct sk_buff *skb,
|
||||
u32 cmd_id);
|
||||
void ath10k_wmi_start_scan_init(struct ath10k *ar, struct wmi_start_scan_arg *);
|
||||
|
||||
void ath10k_wmi_pull_pdev_stats(const struct wmi_pdev_stats *src,
|
||||
struct ath10k_fw_stats_pdev *dst);
|
||||
void ath10k_wmi_pull_pdev_stats_base(const struct wmi_pdev_stats_base *src,
|
||||
struct ath10k_fw_stats_pdev *dst);
|
||||
void ath10k_wmi_pull_pdev_stats_tx(const struct wmi_pdev_stats_tx *src,
|
||||
struct ath10k_fw_stats_pdev *dst);
|
||||
void ath10k_wmi_pull_pdev_stats_rx(const struct wmi_pdev_stats_rx *src,
|
||||
struct ath10k_fw_stats_pdev *dst);
|
||||
void ath10k_wmi_pull_pdev_stats_extra(const struct wmi_pdev_stats_extra *src,
|
||||
struct ath10k_fw_stats_pdev *dst);
|
||||
void ath10k_wmi_pull_peer_stats(const struct wmi_peer_stats *src,
|
||||
struct ath10k_fw_stats_peer *dst);
|
||||
void ath10k_wmi_put_host_mem_chunks(struct ath10k *ar,
|
||||
|
Reference in New Issue
Block a user