]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commit
wifi: ath12k: add firmware-2.bin support
authorRaj Kumar Bhagat <quic_rajkbhag@quicinc.com>
Tue, 23 Jan 2024 12:28:12 +0000 (17:58 +0530)
committerKalle Valo <quic_kvalo@quicinc.com>
Fri, 2 Feb 2024 11:42:51 +0000 (13:42 +0200)
commit12f491cd6d812559e2d986b7836e9062d2efde96
tree91171bf537a362f017c58e075f46fabd12c30be3
parent413e20e82ee78f142cb5194fd317db514f012602
wifi: ath12k: add firmware-2.bin support

Firmware IE containers can dynamically provide various information
what firmware supports. Also it can embed more than one image so
updating firmware is easy, user just needs to update one file in
/lib/firmware/.

The firmware API 2 or higher will use the IE container format, the
current API 1 will not use the new format but it still is supported
for some time. Firmware API 2 files are named as firmware-2.bin
(which contains both amss.bin and m3.bin images) and API 1 files are
amss.bin and m3.bin.

Currently ath12k PCI driver provides firmware binary (amss.bin) path to
MHI driver, MHI driver reads firmware from filesystem and boots it. Add
provision to read firmware files from ath12k driver and provide the amss.bin
firmware data and size to MHI using a pointer.

Currently enum ath12k_fw_features is empty, the patches adding features will
add the flags.

Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1

Signed-off-by: Raj Kumar Bhagat <quic_rajkbhag@quicinc.com>
Acked-by: Jeff Johnson <quic_jjohnson@quicinc.com>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://msgid.link/20240123122812.3811251-1-quic_rajkbhag@quicinc.com
drivers/net/wireless/ath/ath12k/Makefile
drivers/net/wireless/ath/ath12k/core.c
drivers/net/wireless/ath/ath12k/core.h
drivers/net/wireless/ath/ath12k/fw.c [new file with mode: 0644]
drivers/net/wireless/ath/ath12k/fw.h [new file with mode: 0644]
drivers/net/wireless/ath/ath12k/mhi.c
drivers/net/wireless/ath/ath12k/qmi.c