ath11k: Fix LDPC config in set_bitrate_mask hook
authorManikanta Pubbisetty <quic_mpubbise@quicinc.com>
Thu, 2 Jun 2022 12:41:42 +0000 (18:11 +0530)
committerKalle Valo <quic_kvalo@quicinc.com>
Mon, 6 Jun 2022 14:10:16 +0000 (17:10 +0300)
commit4c1fc4f60a534728a34ed224281d17a33f2bf2bd
tree161982255cc1004e2c7dc7e5b03818750bea5bd0
parent0ab52b2bd7be8fd49c8ade7703c1faa15359c6c5
ath11k: Fix LDPC config in set_bitrate_mask hook

Currently ar->ht_cap_info is not set anywhere in the code, this could
result in LDPC config computed wrongly in the set_bitrate_mask() hook
and eventually sending wrong config to the target. Fix this by checking
the LDPC support from the band HT capabilities of the radio instead.

Furthermore, it looks like firmwares running on the ath11k hardware
do not set WMI_HT_CAP_LDPC for advertising the TX LDPC capability,
WMI_HT_CAP_TX_LDPC is set instead and this should be checked for
getting hardware's TX LDPC support. This is true for QCA6390, WCN6855
& WCN6750 hardware.

Also, remove unused variables ht_cap_info & vht_cap_info from
struct ath11k{}.

Found this during code review.

Tested-on: WCN6750 hw1.0 AHB WLAN.MSL.1.0.1-00887-QCAMSLSWPLZ-1

Signed-off-by: Manikanta Pubbisetty <quic_mpubbise@quicinc.com>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/20220602124142.29909-1-quic_mpubbise@quicinc.com
drivers/net/wireless/ath/ath11k/core.h
drivers/net/wireless/ath/ath11k/mac.c