]> www.infradead.org Git - users/jedix/linux-maple.git/commit
wifi: ath12k: fix firmware crash during reo reinject
authorP Praneesh <quic_ppranees@quicinc.com>
Mon, 20 May 2024 07:00:45 +0000 (12:30 +0530)
committerKalle Valo <quic_kvalo@quicinc.com>
Sat, 25 May 2024 08:56:58 +0000 (11:56 +0300)
commita57ab7cced454f69b8ee8aa5f5019ea8de4674da
tree517771bc56e28247fa94f31b67889a3bc21e14d4
parent073f9f249eecd64ab9d59c91c4a23cfdcc02afe4
wifi: ath12k: fix firmware crash during reo reinject

When handling fragmented packets, the ath12k driver reassembles each
fragment into a normal packet and then reinjects it into the HW ring.
However, a firmware crash occurs during this reinjection process.
The issue arises because the driver populates peer metadata in
reo_ent_ring->queue_addr_lo, while the firmware expects the physical
address obtained from the corresponding peer’s queue descriptor. Fix it
by filling peer's queue descriptor's physical address in queue_addr_lo.

Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.1.1-00209-QCAHKSWPL_SILICONZ-1

Fixes: d889913205cf ("wifi: ath12k: driver for Qualcomm Wi-Fi 7 devices")
Signed-off-by: P Praneesh <quic_ppranees@quicinc.com>
Acked-by: Jeff Johnson <quic_jjohnson@quicinc.com>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://msgid.link/20240520070045.631029-4-quic_ppranees@quicinc.com
drivers/net/wireless/ath/ath12k/dp_rx.c