Search Linux Wireless

Re: [PATCH] wifi: ath11k: Add tx ack signal support for mgmt packets

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Maharaja Kennadyrajan <quic_mkenna@xxxxxxxxxxx> writes:

> From: Abinaya Kalaiselvan <quic_akalaise@xxxxxxxxxxx>
>
> Add support to notify tx ack signal values for mgmt
> packets to userspace through NL interface.
>
> Advertise NL80211_EXT_FEATURE_ACK_SIGNAL_SUPPORT flag
> to enable this feature and it will be used for data
> packets as well.
>
> Tested-on: IPQ8074 hw2.0 AHB WLAN.HK.2.7.0.1-01744-QCAHKSWPL_SILICONZ-1
>
> Signed-off-by: Abinaya Kalaiselvan <quic_akalaise@xxxxxxxxxxx>
> Signed-off-by: Maharaja Kennadyrajan <quic_mkenna@xxxxxxxxxxx>

[...]

> --- a/drivers/net/wireless/ath/ath11k/wmi.h
> +++ b/drivers/net/wireless/ath/ath11k/wmi.h
> @@ -2309,6 +2309,7 @@ struct wmi_init_cmd {
>  } __packed;
>  
>  #define WMI_RSRC_CFG_FLAG1_BSS_CHANNEL_INFO_64 BIT(5)
> +#define WMI_RSRC_CFG_FLAG1_ACK_RSSI BIT(18)
>  
>  struct wmi_resource_config {
>  	u32 tlv_header;
> @@ -4541,6 +4542,8 @@ struct wmi_mgmt_tx_compl_event {
>  	u32 desc_id;
>  	u32 status;
>  	u32 pdev_id;
> +	u32 ppdu_id;
> +	u32 ack_rssi;
>  } __packed;

Adding these two fields increases the minimum length for
WMI_TAG_MGMT_TX_COMPL_EVENT:

	[WMI_TAG_MGMT_TX_COMPL_EVENT]
		= { .min_len = sizeof(struct wmi_mgmt_tx_compl_event) },

If we have a firmware version which doesn't include ppdu_id and ack_rssi
in WMI_TAG_MGMT_TX_COMPL_EVENT ath11k will drop those events. Not sure
what to do.

Is it certain that all ath11k firmware versions have ppdu_id and
ack_rssi? Or should handle so in ath11k that ppdu_id and ack_rssi can be
optional in the event?

-- 
https://patchwork.kernel.org/project/linux-wireless/list/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux