We are implementing board-specific fallbacks for the wlanmdsp firmware.
In order to do this in a clear way, move all wlanmdsp firmware back to
ath10k subdir and install symlinks to remain compatible with existing
kernels.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Update firmware file to VIDEO.VE.5.4-00058-PROD-4. This includes a fix
for VP9 decoding compliance.
The WHENCE version string has been changed match the version string in
the firmware file, rather than extracting the middle-most numbers.
Signed-off-by: Nathan Hebert <nhebert@chromium.org>
Add the firmware for the sensors DSP found on Qualcomm SM8250 platform.
Unlike the rest of DSP firmware, this particular firmware is
device-specific. This firmware was published for the Thundercomm RB5
kit aka Qualcomm Robotics RB5 platform.
- SLPI.HY.3.1-00032-SM8250AZL-1
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Platforms using qcm2290 and qrb4210 SoCs require the wlanmdsp.mbn file
to boot the WiFi core (similar to the sdm845 platforms). However these
platforms reject existing wlanmdsp.mbn. Provide a separate wlanmdsp.mbn
file to be used by these two platforms only.
- WLAN.HL.3.3.7.c2-00855-QCAHLSWMTPLZ-1
Cc: Kalle Valo <kvalo@qca.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
To be used on Qualcomm Snapdragon QCM2290 / QRB2210 and SM6115 /
QRB4210, such as on the Qualcomm Robotics RB1 and RB2 platforms.
- VIDEO.VE.6.0-00049-PROD-1
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Add Adreno zap shader, ADSP, CDSP and modem firmare for QRB4210 SoC. It
is used e.g. on Qualcomm Robotics RB2 platform.
- ADSP.VT.5.4.1.c4-00013-KAMORTA-2
- CDSP.VT.2.4.1-00265-KAMORTA-1
- MPSS.HA.1.1-00409-KD_ALL_PACK-1
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Add Adreno zap shader, ADSP and modem firmare for QCM2290 / QRB2210 SoC.
It is used e.g. on Qualcomm Robotics RB1 platform.
- ADSP.VT.5.4.1.c4-00013-KAMORTA-1
- MPSS.HA.1.1-00409-KD_ALL_PACK-1
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
The firmware file ath10k/WCN3990/hw1.0/wlanmdsp.mbn is platform-specific
(rather than being specific to the WiFi chip itself) and can be used
only on the Qualcomm SDM845 platform and close relatives. Other
platforms (e.g. Qualcomm QCM2290, QRB4210) are going to provie their own
copies of the wlanmdsp.mbn firmware.
As discussed with Kalle, move this file to the platform-specific folder,
providing the backwards-compatibility symlink.
Cc: Kalle Valo <kvalo@qca.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
Add the firmware for the sensors DSP found on Qualcomm SDM845/SDA845.
Unlike the rest of DSP firmware, this particular firmware is
device-specific. This firmware was published for the Thundercomm RB3
board aka db845c.
Firmware version:
- SLPI.HY.1.0-00365-SDM845AZL-1
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Remove the execute bits of the Lenovo x13s mbn firmware.
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
The Qualcomm SDM845 platform has a modem-less version, called SDA845.
It still has the modem DSP, which is used for WiFi, GNSS, etc. The
firmware in the qcom/sdm845 dir comes from the Thundercomm RB3 board,
which internally has the SDA845 SoC rather than the full SDM845.
The SC8180X platform (not yet added to linux-firmware) started using
modem.mbn and modem_nm.mbn, the latter being used for no-modem
platforms.
Follow this example and rename qcom/sdm845/modem.mbn firmware
file to modem_nm.mbn. This commit adds a compatibility link for now, to
let the device trees to be adapted to this change. It should be removed
when the proper qcom/sdm845/modem.mbn is submitted.
Cc: Caleb Connolly <caleb.connolly@linaro.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Add the modem DSP firmware for the Qualcomm APQ8016 boards. The files
come from the redistributable linux-board-support-package-r1036.1.zip
for the Dragonboard 410c. The file modem.mbn and wcnss.mbn files wer
generated from segment files using the pil-squasher tool.
Cc: Bjorn Andersson <andersson@kernel.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Add firmware files for Adreno A20x (codenamed yamato), found in
Freescale i.MX51/i.MX53 and in some prehistoric Qualcomm Snapdragon
SoCs.
The firmware were generated from the header files from EfikaMX kernel
sources ([1]), which bear copyright by QUALCOMM Incorporated and have
BSD-3-Clause licence.
[1] https://github.com/genesi/linux-legacy/tree/master/drivers/mxc/amd-gpu
Cc: Rob Clark <robdclark@gmail.com>
Cc: Jonathan Marek <jonathan@marek.ca>
Cc: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
[Fixed WHENCE license entry to avoid check_whence errors]
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
Drop the split a530_zap.mdt + ap530_zap.bNN files. The
qcom/apq8096/a530_zap.mbn is provided instead. Also provide the
symlink qcom/a530_zap.mdt -> qcom/apq8096/a530_zap.mbn for backwards
compatibility with existing kernels and DT files.
Cc: Rob Clark <robdclark@gmail.com>
Cc: Bjorn Andersson <andersson@kernel.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Follow the example of the sc7280 and sc7180 (venus-5.4, vpu-2.0) and
drop the split firmare files (mdt + bNN) in favour of using the squashed
mbn file. For backwards compatibility generate the mdt -> mbn symlink.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Follow the example of the sc7280 and sc7180 (venus-5.4, vpu-2.0) and
drop the split firmare files (mdt + bNN) in favour of using the squashed
mbn file. For backwards compatibility generate the mdt -> mbn symlink.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Follow the example of the sc7280 and sc7180 (venus-5.4, vpu-2.0) and
replace the split firmare files (mdt + bNN) with the squashed mbn file.
For backwards compatibility generate the mdt -> mbn symlink.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Follow the example of the sc7280 and sc7180 (venus-5.4, vpu-2.0) and
replace the split firmare files (mdt + bNN) with the squashed mbn file.
For backwards compatibility generate the mdt -> mbn symlink.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Qualcomm drivers have supported non-split firmware since since 2019 in
linux kernel commit 498b98e93900 ("soc: qcom: mdt_loader: Support
loading non-split images"). There are no released devices using the
SC7280 chipset, so there is no need to support legacy split images.
I verified that the non-split image is loadable and that the venus
media capabilities are intact without the split images with a ChromeOS
5.15 kernel.
Signed-off-by: Nathan Hebert <nhebert@chromium.org>
Update firmware file to VIDEO.VE.5.4-00053-PROD-1. There are a few
fixes including a fix for dynamic resolution change handling.
Signed-off-by: Nathan Hebert <nhebert@chromium.org>
Qualcomm drivers have supported non-split firmware since since 2019 in
linux kernel commit 498b98e93900 ("soc: qcom: mdt_loader: Support
loading non-split images"). The firmware loader works with either the
split or non-split firmware types. The venus driver for SC7180 currently
loads venus.mdt, not the unified venus.mbn.
This commit removes the non-split images. It adds a link from venus.mdt
to venus.mbn. This retains existing driver compatibility, while gaining
the benefit of reducing size of the deployed files.
I verified this change with on ChromeOS using kernels based on 5.4 and
5.15.
Signed-off-by: Nathan Hebert <nhebert@chromium.org>
Qualcomm binary files can be published in one of two formats: a split
MDT+Bnn format, consisting of several files, or a squashed MBN format,
consisting of a single ELF file.
Most of Qualcomm binary files (except the venus firmware) are
distributed (in linux-firmware) and used in the MBN format (even if the
original publishing format was MDT), since that requires transfer of a
single file between the userspace and the kernel.
Provide a squashed variant of Qualcomm Adreno a530 ZAP shader. For
backwards compatibility reason the split a530_zap.* files are retained.
They can be removed later, after all users migrate to new file location.
Cc: Rob Clark <robdclark@chromium.org>
Cc: Bjorn Andersson <andersson@kernel.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
After some discussion with Bjorn, the Qualcomm platform maintainer, it
was agreed to follow the established practice and to inject the SoC name
into the firmware paths.
It is highly unlikely that we are going to run Linux off the existing
ACPI data in these platforms anytime soon. And even if we do so, we'd
have to figure out the file names anyway, as they do not follow the
existing standard names.
Cc: Bjorn Andersson <andersson@kernel.org>
Cc: Mark Pearson <markpearson@lenovo.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Acked-by: Bjorn Andersson <andersson@kernel.org>
Signed-off-by: Josh Boyer <jwboyer@kernel.org>
Add runtime loaded firmware for the audio, compute and sensor DSPs, as
well as the zap shader for the GPU on the Lenovo ThinkPad X13s.
The files are placed under qcom/ as some distributions distribute
linux-firmware as multiple packages and the qcom-specific package will
be needed to provide some of the shared GPU files.
Signed-off-by: Mark Pearson <markpearson@lenovo.com>
Add firmware files for Adreno a405/a420/a430, used in several
generations of Qualcomm Snapdragon processors starting from APQ8084 up
to MSM8994 (including MSM8939 and several other ones).
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Add the modem DSP firmware for the Qualcomm APQ8096 boards. The files
come from the redistributable linux-board-support-package-r01700.1.zip
for the Dragonboard 820c. The file modem.mbn was generated from
segment files using the pil-squasher tool.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Add the audio DSP firmware for the Qualcomm APQ8096 boards. The files
come from the redistributable linux-board-support-package-r01700.1.zip
for the Dragonboard 820c.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Update remoteproc firmware to the following versions:
- ADSP.HT.5.3.c2-00058-SM8250-3
- CDSP.HT.2.3.c1-00060-SM8250-2
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Update A650 SQE firmware to version 0.99 providing security fixes. At
the same time update A650 ZAP shader firmware.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Cc: Jordan Crouse <jordan@cosmicpenguin.net>
Cc: Rob Clark <robdclark@gmail.com>