#1035055 ITP: firmware-imx -- Firmware binary blobs needed on NXP i.MX platforms

#1035055#5
Date:
2023-04-28 12:59:50 UTC
From:
To:
* Package name    : firmware-imx
  Version         : 8.19
  Upstream Contact: NXP
* URL             : https://www.nxp.com/
* License         : LA_OPT_NXP_Software_License_v42
  Description     : Firmware binary blobs needed on NXP i.MX platforms

i.MX Firmware including firmware for VPU, DDR, EPDC, HDMI, DP
(Display Port), and SDMA

To build a working u-boot for i.MX8* at least the DDR train binaries
from NXP are needed.

More details are available in this document:
https://www.nxp.com/docs/en/release-note/IMX_LINUX_RELEASE_NOTES.pdf

The package shall provide the files from firmware-imx-8.19.bin:

epdc/epdc_ED060XH2C1.fw.nonrestricted
epdc/epdc_ED060XH7U2.fw
epdc/epdc_E97_V110.fw
epdc/epdc_E60_V220.fw
epdc/epdc_E60_V110.fw
epdc/epdc_E060SCM.fw
sdma/sdma-imx7d.bin
sdma/sdma-imx51-to3.bin
sdma/sdma-imx31-to2.bin
sdma/sdma-imx35-to2.bin
sdma/sdma-imx35-to1.bin
sdma/sdma-imx25-to1.bin
sdma/sdma-imx6q.bin
sdma/sdma-imx31-to1.bin
sdma/sdma-imx53-to1.bin
xuvi/vpu_fw_imx8_xuvi.bin
ddr/synopsys/ddr4_imem_1d.bin
ddr/synopsys/ddr3_dmem_1d_201810.bin
ddr/synopsys/ddr4_dmem_2d_201810.bin
ddr/synopsys/lpddr4_pmu_train_2d_dmem_202006.bin
ddr/synopsys/lpddr4_pmu_train_1d_dmem_202006.bin
ddr/synopsys/lpddr4_pmu_train_2d_imem_202006.bin
ddr/synopsys/lpddr4_pmu_train_1d_imem.bin
ddr/synopsys/ddr4_imem_2d.bin
ddr/synopsys/ddr4_imem_1d_202006.bin
ddr/synopsys/lpddr4_dmem_1d_v202201.bin
ddr/synopsys/lpddr4_pmu_train_2d_imem_201904.bin
ddr/synopsys/ddr4_dmem_1d_201810.bin
ddr/synopsys/lpddr4_pmu_train_1d_dmem_201904.bin
ddr/synopsys/ddr4_dmem_2d.bin
ddr/synopsys/lpddr4_pmu_train_2d_dmem.bin
ddr/synopsys/lpddr4_pmu_train_1d_imem_202006.bin
ddr/synopsys/ddr4_dmem_1d_202006.bin
ddr/synopsys/ddr4_dmem_1d.bin
ddr/synopsys/lpddr4_pmu_train_1d_dmem.bin
ddr/synopsys/ddr4_imem_1d_201810.bin
ddr/synopsys/lpddr4_pmu_train_2d_dmem_201904.bin
ddr/synopsys/lpddr4_imem_1d_v202201.bin
ddr/synopsys/ddr4_imem_2d_202006.bin
ddr/synopsys/ddr4_imem_2d_201810.bin
ddr/synopsys/ddr3_imem_1d_201810.bin
ddr/synopsys/lpddr4_imem_2d_v202201.bin
ddr/synopsys/ddr3_dmem_1d.bin
ddr/synopsys/ddr4_dmem_2d_202006.bin
ddr/synopsys/lpddr4_dmem_2d_v202201.bin
ddr/synopsys/lpddr4_pmu_train_1d_imem_201904.bin
ddr/synopsys/ddr3_imem_1d.bin
ddr/synopsys/lpddr4_pmu_train_2d_imem.bin
easrc/easrc-imx8mn.bin
vpu/vpu_fw_imx8_enc.bin
vpu/vpu_fw_imx8_dec.bin
vpu/vpu_fw_imx6q.bin
vpu/vpu_fw_imx53.bin
vpu/vpu_fw_imx27_TO1.bin
vpu/vpu_fw_imx51.bin
vpu/vpu_fw_imx6d.bin
vpu/vpu_fw_imx27_TO2.bin
hdmi/cadence/dp_ls1028a.bin
hdmi/cadence/signed_dp_imx8m.bin
hdmi/cadence/signed_hdmi_imx8m.bin
hdmi/cadence/hdmitxfw.bin
hdmi/cadence/hdmirxfw.bin
hdmi/cadence/dpfw.bin
xcvr/xcvr-imx8mp.bin

e.g. in /lib/firmware/imx

#1035055#8
Date:
2023-05-05 20:14:58 UTC
From:
To:
Hi,

Quoting Manuel Traut (2023-04-28 14:59:50)

thank you for intending to package this!

Do you also have some packaging done that we could test? We need these blobs to
build working u-boot binaries.

Do you plan to upload this to non-free-firmware?

Thanks!

cheers, josch

#1035055#13
Date:
2023-05-08 13:25:06 UTC
From:
To:
Hi Josch,
https://salsa.debian.org/manut/firmware-imx/

I also need it for adding imx8mm support to u-boot. On which target are you working?

Yes, but did not so far.
Currently the .bin is part of the debian git. Did not find a way to write a valid watch file for a webpage that denies indexing.

Any help on the package is welcome - even uploading it, since I am no DD.

Thanks
Manu

#1035055#16
Date:
2023-05-08 18:33:42 UTC
From:
To:
Hi,

Quoting Traut Manuel LCPF-CH (2023-05-08 15:25:06)

the MNT Reform 2 open source laptop which is based on the IMX8MQ SoM. Support
for it was added to u-boot here:

https://source.denx.de/u-boot/u-boot/-/commit/ebe2e0c309470249ffb09480d39c2dea9e64871c

Indeed there is no HTML listing. Is the file linked from any other place?

Okay. I can upload this.

But are we allowed to distribute these? Reading the copyright file,
distribution only seems to be allowed by those in the "Software Content
Register".

On which basis does the license allow us to redistribute it?

Thanks!

cheers, josch

#1035055#19
Date:
2025-01-12 23:13:20 UTC
From:
To:
Hi,

I wrote to imx@lists.linux.dev about this problem (full text of my mail at the
end of this message) and got told that the issue was forwarded to the internal
release management team.  But no follow-up since then:
https://lore.kernel.org/imx/172079266731.2928366.7031846226118749814@localhost/

Thanks!

cheers, josch
------------------------------------------------------ Dear NXP team, I'm writing you as a member of the Debian project. I am trying to add support for platforms like the NXP i.MX8MQ to the debian-installer disk images. These images need to (for example) contain the DDR training blobs which can be downloaded from https://www.nxp.com/lgfiles/NMG/MAD/YOCTO/firmware-imx-8.24-fbe0a4c.bin Unfortunately, the NXP Software License Agreement states: My reading of that agreement is, that Debian is not permitted to redistribute these blobs. But this in turn means that our disk images will not work out-of-the box with NXP platforms that require these blobs to be loaded early during boot to function. Could you assist me in connecting with the appropriate person who can help resolve this issue? Maybe there is a possibility for the Debian project to be allowed to distribute these blobs in its repositories? Thanks a lot in advance and have a nice weekend! Johannes Schauer Marin Rodrigues