In 'ath10k_htt_rx_tx_compl_ind()',
int status = MS(resp->data_tx_completion.flags, HTT_DATA_TX_STATUS);
actually is
int status = (((resp->data_tx_completion.flags) & 0x07) >> 0);
which can't be equal to HTT_DATA_TX_STATUS_DOWNLOAD_FAIL (128)
regardless of the 'data_tx_completion.flags' value. This is most
likely a weird (but I have no clue how serious it may be) bug.
Dmitry
On 9/13/2023 10:15 PM, Dmitry Antipov wrote:
> In 'ath10k_htt_rx_tx_compl_ind()',
>
> int status = MS(resp->data_tx_completion.flags, HTT_DATA_TX_STATUS);
>
> actually is
>
> int status = (((resp->data_tx_completion.flags) & 0x07) >> 0);
>
> which can't be equal to HTT_DATA_TX_STATUS_DOWNLOAD_FAIL (128)
> regardless of the 'data_tx_completion.flags' value. This is most
> likely a weird (but I have no clue how serious it may be) bug.
>
> Dmitry
Looking at firmware code I don't see any reference to a "download fail"
status so I don't think firmware would ever send such a status.
If you want to submit a patch, the correct fix is to remove all
references to HTT_DATA_TX_STATUS_DOWNLOAD_FAIL.
/jeff