ath10k / WCN3990: firmware-5.bin and wlanmdsp.mbn being out of sync
Kalle Valo
kvalo at kernel.org
Mon Dec 4 04:56:25 PST 2023
Hi Dmitry,
Dmitry Baryshkov <dmitry.baryshkov at linaro.org> writes:
> I wanted to ask your opinion regarding one of the issues we stumbled
> upon on the Qualcomm RB1 and RB2 platforms. These platforms use ath10k
> snoc (WCN3990) WiFi "card". We noticed the following messages being
> spawned on the console, which I traced it to the
> ATH10K_FW_FEATURE_SINGLE_CHAN_INFO_PER_CHANNEL feature:
>
> ath10k_snoc c800000.wifi: chan info: invalid frequency 0 (idx 41 out of bounds)
>
> As a reminder, on this platform the wlan firmware and firmware-N.bin
> files come separately.
> The wlanmdsp.mbn is downloaded by the onboard modem DSP via the
> tqftpserv request (which is served from the board-specific folder
> qcom/qcm2210). The firmware-N.bin file is loaded by the WiFi driver
> itself from the generic folder, ath10k/WCN3990/hw1.0. Current
> firmware-5.bin file was provided with the sdm845's wlanmdsp.mbn, which
> is older than qcm2210/qrb4210's wlanmdsp.mbn.
>
> I'm looking for suggestions on how to make ath10k driver load
> firmware-N.bin file which corresponds to the board-specific
> wlanmdsp.mbn.
We have had similar discussions in the past but it didn't go very far.
It would be so nice if you could finally fix this :) At one point we
even had a discussion that we might need something similar for ath11k
but it didn't go anywhere.
> In particular I'd like to hear your opinion on the following proposal:
>
> Add the optional property to the board DT, that specifies:
> firmware-name = "path/to/wlanmdsp.mbn". The property, if present,
> will be used as an override for the firmware directory. So, while the
> ath10k driver will not load wlanmdsp.mbn on its own, it will still
> look for the firmware-N files in the specified directory.
Back in the day I was thinking something like below, please let me know
what you think.
So the normal firmware path for WCN3990 is:
ath10k/WCN3990/hw1.0/
My idea was that if we could extend it for different "platforms" (not
sure what's the proper term for this) by having platform specific
directories:
ath10k/WCN3990/hw1.0-platform/
(Replace "platform" with a unique name for the platform, for example
"acme-kv7" for a product from Acme with model name kv7.)
Then DT could inform ath10k about this "platform" string and ath10k
would then download boath firmware-N.bin and board-2.bin from the
platform specific directory.
And even cleaner if we could have the *.mbn firmware files in the same
directory, even if ath10k doesn't access them directly.
--
https://patchwork.kernel.org/project/linux-wireless/list/
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
More information about the ath10k
mailing list