Message ID | 20240130-wcn3990-firmware-path-v1-0-826b93202964@linaro.org |
---|---|
Headers | show |
Series | wifi: ath10k: support board-specific firmware overrides | expand |
On 30/01/2024 17:38, Dmitry Baryshkov wrote: > For WCN3990 platforms we need to look for the platform / board specific > firmware-N.mbn file which corresponds to the wlanmdsp.mbn loaded to the > modem DSP via the TQFTPserv. Add firmware-name property describing this > classifier. > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > Documentation/devicetree/bindings/net/wireless/qcom,ath10k.yaml | 6 ++++++ > 1 file changed, 6 insertions(+) > Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof
On 1/30/2024 8:38 AM, Dmitry Baryshkov wrote: > On WCN3990 platforms actual firmware, wlanmdsp.mbn, is sideloaded to the > modem DSP via the TQFTPserv. These MBN files are signed by the device > vendor, can only be used with the particular SoC or device. > > Unfortunately different firmware versions come with different features. > For example firmware for SDM845 doesn't use single-chan-info-per-channel > feature, while firmware for QRB2210 / QRB4210 requires that feature. > > Allow board DT files to override the subdir of the fw dir used to lookup > the firmware-N.bin file decribing corresponding WiFi firmware. > For example, adding firmware-name = "qrb4210" property will make the > driver look for the firmware-N.bin first in ath10k/WCN3990/hw1.0/qrb4210 > directory and then fallback to the default ath10k/WCN3990/hw1.0 dir. > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > Dmitry Baryshkov (4): > dt-bindings: net: wireless: ath10k: describe firmware-name property > wifi: ath10k: support board-specific firmware overrides > arm64: dts: qcom: qrb2210-rb1: add firmware-name qualifier to WiFi node > arm64: dts: qcom: qrb4210-rb1: add firmware-name qualifier to WiFi node > > .../devicetree/bindings/net/wireless/qcom,ath10k.yaml | 6 ++++++ > arch/arm64/boot/dts/qcom/qrb2210-rb1.dts | 1 + > arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 1 + > drivers/net/wireless/ath/ath10k/core.c | 11 ++++++++++- > drivers/net/wireless/ath/ath10k/core.h | 2 ++ > drivers/net/wireless/ath/ath10k/snoc.c | 3 +++ > 6 files changed, 23 insertions(+), 1 deletion(-) > --- > base-commit: 596764183be8ebb13352b281a442a1f1151c9b06 > change-id: 20240130-wcn3990-firmware-path-7a05a0cf8107 > > Best regards, This series looks OK to me, but would like Kalle to review as well
On Mon, 12 Feb 2024 at 22:56, Jeff Johnson <quic_jjohnson@quicinc.com> wrote: > > On 1/30/2024 8:38 AM, Dmitry Baryshkov wrote: > > On WCN3990 platforms actual firmware, wlanmdsp.mbn, is sideloaded to the > > modem DSP via the TQFTPserv. These MBN files are signed by the device > > vendor, can only be used with the particular SoC or device. > > > > Unfortunately different firmware versions come with different features. > > For example firmware for SDM845 doesn't use single-chan-info-per-channel > > feature, while firmware for QRB2210 / QRB4210 requires that feature. > > > > Allow board DT files to override the subdir of the fw dir used to lookup > > the firmware-N.bin file decribing corresponding WiFi firmware. > > For example, adding firmware-name = "qrb4210" property will make the > > driver look for the firmware-N.bin first in ath10k/WCN3990/hw1.0/qrb4210 > > directory and then fallback to the default ath10k/WCN3990/hw1.0 dir. > > > > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > > --- > > Dmitry Baryshkov (4): > > dt-bindings: net: wireless: ath10k: describe firmware-name property > > wifi: ath10k: support board-specific firmware overrides > > arm64: dts: qcom: qrb2210-rb1: add firmware-name qualifier to WiFi node > > arm64: dts: qcom: qrb4210-rb1: add firmware-name qualifier to WiFi node > > > > .../devicetree/bindings/net/wireless/qcom,ath10k.yaml | 6 ++++++ > > arch/arm64/boot/dts/qcom/qrb2210-rb1.dts | 1 + > > arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 1 + > > drivers/net/wireless/ath/ath10k/core.c | 11 ++++++++++- > > drivers/net/wireless/ath/ath10k/core.h | 2 ++ > > drivers/net/wireless/ath/ath10k/snoc.c | 3 +++ > > 6 files changed, 23 insertions(+), 1 deletion(-) > > --- > > base-commit: 596764183be8ebb13352b281a442a1f1151c9b06 > > change-id: 20240130-wcn3990-firmware-path-7a05a0cf8107 > > > > Best regards, > This series looks OK to me, but would like Kalle to review as well Kalle, gracious ping. This is my proposal to fix the issue that we have discussed at some point, wlanmdsp.mbn for sdm845 and for qcm2290 / sm6115 have different features, resulting in kernel log being spammed on the RB1 / RB2 boards.
On WCN3990 platforms actual firmware, wlanmdsp.mbn, is sideloaded to the modem DSP via the TQFTPserv. These MBN files are signed by the device vendor, can only be used with the particular SoC or device. Unfortunately different firmware versions come with different features. For example firmware for SDM845 doesn't use single-chan-info-per-channel feature, while firmware for QRB2210 / QRB4210 requires that feature. Allow board DT files to override the subdir of the fw dir used to lookup the firmware-N.bin file decribing corresponding WiFi firmware. For example, adding firmware-name = "qrb4210" property will make the driver look for the firmware-N.bin first in ath10k/WCN3990/hw1.0/qrb4210 directory and then fallback to the default ath10k/WCN3990/hw1.0 dir. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> --- Dmitry Baryshkov (4): dt-bindings: net: wireless: ath10k: describe firmware-name property wifi: ath10k: support board-specific firmware overrides arm64: dts: qcom: qrb2210-rb1: add firmware-name qualifier to WiFi node arm64: dts: qcom: qrb4210-rb1: add firmware-name qualifier to WiFi node .../devicetree/bindings/net/wireless/qcom,ath10k.yaml | 6 ++++++ arch/arm64/boot/dts/qcom/qrb2210-rb1.dts | 1 + arch/arm64/boot/dts/qcom/qrb4210-rb2.dts | 1 + drivers/net/wireless/ath/ath10k/core.c | 11 ++++++++++- drivers/net/wireless/ath/ath10k/core.h | 2 ++ drivers/net/wireless/ath/ath10k/snoc.c | 3 +++ 6 files changed, 23 insertions(+), 1 deletion(-) --- base-commit: 596764183be8ebb13352b281a442a1f1151c9b06 change-id: 20240130-wcn3990-firmware-path-7a05a0cf8107 Best regards,