[PATCH v2] wifi: ath12k: report station mode per-chain signal strength
Jeff Johnson
jeff.johnson at oss.qualcomm.com
Wed Mar 26 14:06:29 PDT 2025
On 3/24/2025 7:31 PM, Lingbo Kong wrote:
>
>
> On 2025/2/26 19:34, Lingbo Kong wrote:
>>
>>
>> On 2025/2/10 13:40, Lingbo Kong wrote:
>>> Currently, command “iw wlan0 station dump” does not show per-chain signal
>>> strength.
>>>
>>> This is because ath12k does not handle the num_per_chain_rssi and
>>> rssi_avg_beacon reported by firmware to ath12k.
>>>
>>> To address this, update ath12k to send WMI_REQUEST_STATS_CMDID with the
>>> flag WMI_REQUEST_RSSI_PER_CHAIN_STAT to the firmware. Then, add logic to
>>> handle num_per_chain_rssi and rssi_avg_beacon in the
>>> ath12k_wmi_tlv_fw_stats_parse(), and assign the resulting per-chain
>>> signal
>>> strength to the chain_signal of struct station_info.
>>>
>>> After that, "iw dev xxx station dump" shows the correct per-chain signal
>>> strength.
>>> Such as:
>>>
>>> Station AA:BB:CC:DD:EE:FF (on wlan0)
>>> inactive time: 212 ms
>>> rx bytes: 10398
>>> rx packets: 64
>>> tx bytes: 4362
>>> tx packets: 33
>>> tx retries: 49
>>> tx failed: 0
>>> beacon loss: 0
>>> beacon rx: 14
>>> rx drop misc: 16
>>> signal: -45 [-51, -46] dBm
>>> beacon signal avg: -44 dBm
>>>
>>> Tested-on: WCN7850 hw2.0 PCI
>>> WLAN.HMT.1.0-03427-QCAHMTSWPL_V1.0_V2.0_SILICONZ-1.15378.4
>>>
>>> Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219751
>>> Signed-off-by: Lingbo Kong <quic_lingbok at quicinc.com>
>>> ---
>>> v2:
>>> 1.add break to avoid warning
>>>
>>> drivers/net/wireless/ath/ath12k/core.h | 5 ++
>>> drivers/net/wireless/ath/ath12k/mac.c | 39 ++++++++++--
>>> drivers/net/wireless/ath/ath12k/mac.h | 2 +
>>> drivers/net/wireless/ath/ath12k/wmi.c | 82 ++++++++++++++++++++++++++
>>> drivers/net/wireless/ath/ath12k/wmi.h | 18 +++++-
>>> 5 files changed, 139 insertions(+), 7 deletions(-)
>>>
>>> diff --git a/drivers/net/wireless/ath/ath12k/core.h
>>> b/drivers/net/wireless/ath/ath12k/core.h
>>> index 57e71ccbbb67..967e3cad3bca 100644
>>> --- a/drivers/net/wireless/ath/ath12k/core.h
>>> +++ b/drivers/net/wireless/ath/ath12k/core.h
>>> @@ -508,6 +508,7 @@ struct ath12k_link_sta {
>>> u32 bw_prev;
>>
>>
>> hi jeff,
>> do you have any updates on this patch?🙂
>>
>> /lingbo
>>
>
> hi, jeff,
>
> do you have any updates on this patch?🙂
> should i send a new version based on the current upstream code?
Please rebase, the current patch no longer applies
More information about the ath12k
mailing list