2021-06-15 08:12:17

by Vinod Koul

[permalink] [raw]
Subject: [PATCH v2] arm64: dts: qcom: sm8350-mtp: Use mdt files for firmware

As discussed in [1], we should keep one of the file formats for firmware
and not change.

So to simplify we chose to use mdt for firmware file. This would enable
folks to work with upstream linux-firmware as well as downstream
firmwares.

So switch it for SM8350 which is a new platform, so switch can be done
safely.

[1]: http://lore.kernel.org/r/CALAqxLXn6wFBAxRkThxWg5RvTuFEX80kHPt8BVja1CpAB-qzGA@mail.gmail.com

Signed-off-by: Vinod Koul <[email protected]>
---

Changes in v2:
- Add more details about the switch in changelog

arch/arm64/boot/dts/qcom/sm8350-mtp.dts | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/sm8350-mtp.dts b/arch/arm64/boot/dts/qcom/sm8350-mtp.dts
index 93740444dd1e..d859305f1f75 100644
--- a/arch/arm64/boot/dts/qcom/sm8350-mtp.dts
+++ b/arch/arm64/boot/dts/qcom/sm8350-mtp.dts
@@ -40,7 +40,7 @@ vph_pwr: vph-pwr-regulator {

&adsp {
status = "okay";
- firmware-name = "qcom/sm8350/adsp.mbn";
+ irmware-name = "qcom/sm8350/adsp.mdt";
};

&apps_rsc {
@@ -278,12 +278,12 @@ vreg_l13c_3p0: ldo13 {

&cdsp {
status = "okay";
- firmware-name = "qcom/sm8350/cdsp.mbn";
+ firmware-name = "qcom/sm8350/cdsp.mdt";
};

&mpss {
status = "okay";
- firmware-name = "qcom/sm8350/modem.mbn";
+ firmware-name = "qcom/sm8350/modem.mdt";
};

&qupv3_id_1 {
@@ -292,7 +292,7 @@ &qupv3_id_1 {

&slpi {
status = "okay";
- firmware-name = "qcom/sm8350/slpi.mbn";
+ firmware-name = "qcom/sm8350/slpi.mdt";
};

&tlmm {
--
2.31.1


2021-06-16 00:19:15

by Bjorn Andersson

[permalink] [raw]
Subject: Re: [PATCH v2] arm64: dts: qcom: sm8350-mtp: Use mdt files for firmware

On Tue 15 Jun 03:11 CDT 2021, Vinod Koul wrote:

> As discussed in [1], we should keep one of the file formats for firmware
> and not change.
>
> So to simplify we chose to use mdt for firmware file. This would enable
> folks to work with upstream linux-firmware as well as downstream
> firmwares.
>
> So switch it for SM8350 which is a new platform, so switch can be done
> safely.
>
> [1]: http://lore.kernel.org/r/CALAqxLXn6wFBAxRkThxWg5RvTuFEX80kHPt8BVja1CpAB-qzGA@mail.gmail.com
>

As mentioned elsewhere, we used to run exclusively with mdt + bNN files
- as that's what we typically get with Android - and I kept receiving
reports about people missing individual bNN files, or managing to
upgrade some but not all of the files etc. Some of these errors tells
you which file you're missing, others just tells you that the hashes
didn't match whatever was loaded.

As such, the move to .mbn files has saved us quite a bit of head ache.


That said, the code doesn't care about the suffix per say, it starts
loading the firmware and detects if it's a combined file or not. So you
can simply copy or symlink the .mdt to match the given .mbn path.

> Signed-off-by: Vinod Koul <[email protected]>
> ---
>
> Changes in v2:
> - Add more details about the switch in changelog
>
> arch/arm64/boot/dts/qcom/sm8350-mtp.dts | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/sm8350-mtp.dts b/arch/arm64/boot/dts/qcom/sm8350-mtp.dts
> index 93740444dd1e..d859305f1f75 100644
> --- a/arch/arm64/boot/dts/qcom/sm8350-mtp.dts
> +++ b/arch/arm64/boot/dts/qcom/sm8350-mtp.dts
> @@ -40,7 +40,7 @@ vph_pwr: vph-pwr-regulator {
>
> &adsp {
> status = "okay";
> - firmware-name = "qcom/sm8350/adsp.mbn";
> + irmware-name = "qcom/sm8350/adsp.mdt";

And you're already doing something "non-standard" if your MTP has
adsp.mdt in this path :)

Regards,
Bjorn

> };
>
> &apps_rsc {
> @@ -278,12 +278,12 @@ vreg_l13c_3p0: ldo13 {
>
> &cdsp {
> status = "okay";
> - firmware-name = "qcom/sm8350/cdsp.mbn";
> + firmware-name = "qcom/sm8350/cdsp.mdt";
> };
>
> &mpss {
> status = "okay";
> - firmware-name = "qcom/sm8350/modem.mbn";
> + firmware-name = "qcom/sm8350/modem.mdt";
> };
>
> &qupv3_id_1 {
> @@ -292,7 +292,7 @@ &qupv3_id_1 {
>
> &slpi {
> status = "okay";
> - firmware-name = "qcom/sm8350/slpi.mbn";
> + firmware-name = "qcom/sm8350/slpi.mdt";
> };
>
> &tlmm {
> --
> 2.31.1
>