STRUCT QLINK_STA_STATS(9)
π struct qlink_sta_stats(9) π
okay so this is straight out of the Kernel API Manual (section 9, kernel API, iykyk) and bestieβ¦ it's giving wireless driver tea. it's a struct that carries the whole stats card of a STA (a station, aka a client device) in the Quantenna/qtnfmac qlink world. let's get into it π
πΈ NAME πΈ
struct qlink_sta_stats β literally the data for QTN_TLV_ID_STA_STATS. that's the whole name, that's the whole vibe β¨
β¨ SYNOPSIS β¨
struct qlink_sta_stats {
__le64 rx_bytes;
__le64 tx_bytes;
__le64 rx_beacon;
__le64 rx_duration;
__le64 t_offset;
__le32 connected_time;
__le32 inactive_time;
__le32 rx_packets;
__le32 tx_packets;
__le32 tx_retries;
__le32 tx_failed;
__le32 rx_dropped_misc;
__le32 beacon_loss_count;
__le32 expected_throughput;
struct qlink_sta_info_state sta_flags;
struct qlink_sta_info_rate txrate;
struct qlink_sta_info_rate rxrate;
__le16 llid;
__le16 plid;
u8 local_pm;
u8 peer_pm;
u8 nonpeer_pm;
u8 rx_beacon_signal_avg;
u8 plink_state;
u8 signal;
u8 signal_avg;
u8 rsvd[1];
};
look at all those little fields, they're literally a whole personality test for your wireless link π¦
π Members π
no cap, the page just has the heading and then moves on π the real content is right below, keep scrolling bestie π
π«Ά Description π«Ά
so this struct carries statistics of a STA. that's the job. that's the assignment. and it ate π
but here's the important caveat you need to internalise: not all fields may be filled with valid values. which fields are real and which are just vibes needs to be signalled separately β valid fields should be indicated as such using a bitmap of enum qlink_sta_info. and where does that bitmap live? carried separately in a payload of QTN_TLV_ID_BITMAP. so don't go reading raw numbers and assuming they mean something, bestie, check the bitmap first π
π₯ SEE ALSO π₯
okay this is a huge friend group, but every single one of them is invited, so here's the whole roster π
- kernel file
./drivers/net/wireless/quantenna/qtnfmac/qlink.h enum qlink_msg_type(9)struct qlink_msg_header(9)enum qlink_hw_capab(9)enum qlink_driver_capab(9)struct qlink_intf_info(9)struct qlink_channel(9)struct qlink_chandef(9)struct qlink_sta_info_state(9)enum qlink_sr_ctrl_flags(9)struct qlink_sr_params(9)enum qlink_cmd_type(9)struct qlink_cmd(9)struct qlink_cmd_init_fw(9)struct qlink_cmd_manage_intf(9)struct qlink_cmd_mgmt_frame_register(9)struct qlink_cmd_frame_tx(9)struct qlink_cmd_get_sta_info(9)struct qlink_cmd_add_key(9)struct qlink_cmd_set_def_key(9)struct qlink_cmd_set_def_mgmt_key(9)struct qlink_cmd_change_sta(9)struct qlink_cmd_del_sta(9)struct qlink_cmd_connect(9)struct qlink_cmd_external_auth(9)struct qlink_cmd_disconnect(9)struct qlink_cmd_updown(9)enum qlink_band(9)struct qlink_cmd_band_info_get(9)struct qlink_cmd_get_chan_stats(9)enum qlink_reg_initiator(9)enum qlink_user_reg_hint_type(9)struct qlink_cmd_reg_notify(9)enum qlink_chan_sw_flags(9)struct qlink_cmd_chan_switch(9)enum qlink_hidden_ssid(9)struct qlink_cmd_start_ap(9)struct qlink_cmd_start_cac(9)struct qlink_acl_data(9)enum qlink_pm_mode(9)struct qlink_cmd_pm_set(9)enum qlink_txpwr_op(9)struct qlink_cmd_txpwr(9)enum qlink_wowlan_trigger(9)struct qlink_cmd_wowlan_set(9)struct qlink_cmd_ndev_event(9)struct qlink_cmd_ndev_changeupper(9)enum qlink_scan_flags(9)struct qlink_cmd_scan(9)struct qlink_cmd_update_owe(9)struct qlink_resp(9)struct qlink_resp_init_fw(9)enum qlink_dfs_regions(9)struct qlink_resp_get_mac_info(9)struct qlink_resp_get_hw_info(9)struct qlink_resp_manage_intf(9)struct qlink_resp_get_sta_info(9)struct qlink_resp_band_info_get(9)struct qlink_resp_get_chan_stats(9)struct qlink_resp_channel_get(9)struct qlink_resp_txpwr(9)struct qlink_event(9)struct qlink_event_sta_assoc(9)struct qlink_event_sta_deauth(9)struct qlink_event_bss_join(9)struct qlink_event_bss_leave(9)struct qlink_event_freq_change(9)struct qlink_event_rxmgmt(9)struct qlink_event_scan_result(9)enum qlink_scan_complete_flags(9)struct qlink_event_scan_complete(9)struct qlink_event_radar(9)struct qlink_event_external_auth(9)struct qlink_event_mic_failure(9)struct qlink_event_update_owe(9)enum qlink_tlv_id(9)enum qlink_reg_rule_flags(9)struct qlink_tlv_reg_rule(9)struct qlink_tlv_channel(9)struct qlink_tlv_chandef(9)struct qlink_tlv_ie_set(9)struct qlink_tlv_ext_ie(9)struct qlink_tlv_iftype_data(9)enum qlink_chan_stat(9)struct qlink_chan_stats(9)enum qlink_sta_info(9)struct qlink_sta_info_rate(9)struct qlink_random_mac_addr(9)struct qlink_wowlan_capab_data(9)struct qlink_wowlan_support(9)
like I said. huge friend group. every one of them iconic, every one of them linked π
okay that's the whole page, bestie β sourced from ./drivers/net/wireless/quanten... (that's how it's written in the footer, not me being lazy, I promise π) and dated October 2026, closing out as struct qlink_sta_stats(9). go forth and read those STA stats responsibly π
β¨πΈ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms