Re: [PATCH v2] imx8mq_evk: switch board to use binman for images
On Sat, Jan 08, 2022 at 08:18:15PM +, ZHIZHIKIN Andrey wrote: > Hello Tom, > > > -Original Message- > > From: U-Boot On Behalf Of Andrey Zhizhikin > > Sent: Friday, December 3, 2021 5:18 PM > > To: u-boot@lists.denx.de > > Cc: sba...@denx.de; feste...@gmail.com; uboot-...@nxp.com; peng@nxp.com; > > h...@denx.de; t.rem...@phytec.de; ja...@amarulasolutions.com; > > marcel.ziswi...@toradex.com; il...@ronetix.at; xypron.g...@gmx.de; Andrey > > Zhizhikin > > Subject: [PATCH v2] imx8mq_evk: switch board to use binman for images > > > > Currently i.MX8MQ EVK board still targeting the old image generation > > approach for image generation, which relies on the FIT generator that > > has been dropped from the tree. > > > > Switch the board to use binman instead, which is a standard image > > generator now. > > > > Update board documentation to correct build command, and advise latest > > firmware and TF-A versions to use. > > > > NOTE: New image produced by binman does not have Signed HDMI FW support, > > this has been left on the side and does not interfere with the general > > boot flow. > > > > Tested on: [i.MX8MQ rev2.0] > > > > Signed-off-by: Andrey Zhizhikin > > --- > > > > Changes in V2: > > - Modify binman and documentation to use single flash.bin file instead > > of flash.bin+u-boot.itb combination, suggested by Fabio Estevam. > > Since you've applied similar patch from Peng, this one is not needed > anymore and can be dropped. > > There are however few pieces that are present in this patch not picked > up in any other patch like doc update, single flash.bin, etc. > > I saw that Patrick Wildt had "single flash.bin" part submitted in [1], > which would also be beneficial to have in 2022.01 for consistency, and > would allow me to update imx8mq_evk machine in meta-freescale Yocto > layer so it can be finally built with upstream BSP and 2022.01. If you > can pick it up saw well - that would be ideal! OK, yes, that's in my testing right now queue. > The rest I will extract and send as separate patches after 2022.01. Thanks! -- Tom signature.asc Description: PGP signature
RE: [PATCH v2] imx8mq_evk: switch board to use binman for images
Hello Tom, > -Original Message- > From: U-Boot On Behalf Of Andrey Zhizhikin > Sent: Friday, December 3, 2021 5:18 PM > To: u-boot@lists.denx.de > Cc: sba...@denx.de; feste...@gmail.com; uboot-...@nxp.com; peng@nxp.com; > h...@denx.de; t.rem...@phytec.de; ja...@amarulasolutions.com; > marcel.ziswi...@toradex.com; il...@ronetix.at; xypron.g...@gmx.de; Andrey > Zhizhikin > Subject: [PATCH v2] imx8mq_evk: switch board to use binman for images > > Currently i.MX8MQ EVK board still targeting the old image generation > approach for image generation, which relies on the FIT generator that > has been dropped from the tree. > > Switch the board to use binman instead, which is a standard image > generator now. > > Update board documentation to correct build command, and advise latest > firmware and TF-A versions to use. > > NOTE: New image produced by binman does not have Signed HDMI FW support, > this has been left on the side and does not interfere with the general > boot flow. > > Tested on: [i.MX8MQ rev2.0] > > Signed-off-by: Andrey Zhizhikin > --- > > Changes in V2: > - Modify binman and documentation to use single flash.bin file instead > of flash.bin+u-boot.itb combination, suggested by Fabio Estevam. Since you've applied similar patch from Peng, this one is not needed anymore and can be dropped. There are however few pieces that are present in this patch not picked up in any other patch like doc update, single flash.bin, etc. I saw that Patrick Wildt had "single flash.bin" part submitted in [1], which would also be beneficial to have in 2022.01 for consistency, and would allow me to update imx8mq_evk machine in meta-freescale Yocto layer so it can be finally built with upstream BSP and 2022.01. If you can pick it up saw well - that would be ideal! The rest I will extract and send as separate patches after 2022.01. > > arch/arm/dts/imx8mq-evk-u-boot.dtsi | 124 ++ > arch/arm/mach-imx/imx8m/Kconfig | 1 + > board/freescale/imx8mq_evk/Kconfig| 2 +- > .../imx8mq_evk/imximage-8mq-lpddr4.cfg| 9 ++ > configs/imx8mq_evk_defconfig | 2 +- > doc/board/nxp/imx8mq_evk.rst | 21 +-- > 6 files changed, 148 insertions(+), 11 deletions(-) > create mode 100644 board/freescale/imx8mq_evk/imximage-8mq-lpddr4.cfg > > diff --git a/arch/arm/dts/imx8mq-evk-u-boot.dtsi b/arch/arm/dts/imx8mq-evk-u- > boot.dtsi > index 2cfc12b7e0..e3f780ca75 100644 > --- a/arch/arm/dts/imx8mq-evk-u-boot.dtsi > +++ b/arch/arm/dts/imx8mq-evk-u-boot.dtsi > @@ -1,5 +1,129 @@ > // SPDX-License-Identifier: (GPL-2.0 OR MIT) > > +/ { > + binman: binman { > + multiple-images; > + }; > +}; > + > + { > + u-boot-spl-ddr { > + filename = "u-boot-spl-ddr.bin"; > + pad-byte = <0xff>; > + align-size = <4>; > + align = <4>; > + > + u-boot-spl { > + align-end = <4>; > + }; > + > + blob_1: blob-ext@1 { > + filename = "lpddr4_pmu_train_1d_imem.bin"; > + size = <0x8000>; > + }; > + > + blob_2: blob-ext@2 { > + filename = "lpddr4_pmu_train_1d_dmem.bin"; > + size = <0x4000>; > + }; > + > + blob_3: blob-ext@3 { > + filename = "lpddr4_pmu_train_2d_imem.bin"; > + size = <0x8000>; > + }; > + > + blob_4: blob-ext@4 { > + filename = "lpddr4_pmu_train_2d_dmem.bin"; > + size = <0x4000>; > + }; > + }; > + > + spl { > + filename = "spl.bin"; > + > + mkimage { > + args = "-n spl/u-boot-spl.cfgout -T imx8mimage -e > 0x7e1000"; > + > + blob { > + filename = "u-boot-spl-ddr.bin"; > + }; > + }; > + }; > + > + itb { > + filename = "u-boot.itb"; > + > + fit { > + description = "Configuration to load ATF before U-Boot"; > + #address-cells = <1>; > + fit,external-offset = ; > + > + images { > + uboot { > + description = "U-Boot (64-bit)"; > +
Re: [PATCH v2] imx8mq_evk: switch board to use binman for images
On Mon, Dec 6, 2021 at 6:46 PM Tom Rini wrote: > So this platform doesn't run in to the HDMI blob problem or similar, in > CI? imx8mq can happily boot without the HDMI firmware. Please note that HDMI support for i.MX8MQ in mainline is still not available.
Re: [PATCH v2] imx8mq_evk: switch board to use binman for images
On Mon, Dec 06, 2021 at 06:38:00PM -0300, Fabio Estevam wrote: > Hi Tom, > > On Mon, Dec 6, 2021 at 6:26 PM Tom Rini wrote: > > > I believe this ends up being blocked on getting binman / CI happy with > > the files being missing? > > This patch addresses the following build warning: > > = WARNING == > This board uses CONFIG_SPL_FIT_GENERATOR. Please migrate > to binman instead, to avoid the proliferation of > UPD include/generated/dt.h > arch-specific scripts with no tests. > UPD include/generated/timestamp_autogenerated.h > > > The other issue about missing files is orthogonal to this patch and it is > being > handled by Heiko's patch: > https://www.mail-archive.com/u-boot@lists.denx.de/msg425275.html > > Andrey's conversion to binman can be safely applied to 2022.01. So this platform doesn't run in to the HDMI blob problem or similar, in CI? -- Tom signature.asc Description: PGP signature
Re: [PATCH v2] imx8mq_evk: switch board to use binman for images
Hi Tom, On Mon, Dec 6, 2021 at 6:26 PM Tom Rini wrote: > I believe this ends up being blocked on getting binman / CI happy with > the files being missing? This patch addresses the following build warning: = WARNING == This board uses CONFIG_SPL_FIT_GENERATOR. Please migrate to binman instead, to avoid the proliferation of UPD include/generated/dt.h arch-specific scripts with no tests. UPD include/generated/timestamp_autogenerated.h The other issue about missing files is orthogonal to this patch and it is being handled by Heiko's patch: https://www.mail-archive.com/u-boot@lists.denx.de/msg425275.html Andrey's conversion to binman can be safely applied to 2022.01.
Re: [PATCH v2] imx8mq_evk: switch board to use binman for images
On Mon, Dec 06, 2021 at 06:05:50PM -0300, Fabio Estevam wrote: > Hi Tom and Stefano, > > On Fri, Dec 3, 2021 at 1:27 PM Fabio Estevam wrote: > > > > Hi Andrey, > > > > On Fri, Dec 3, 2021 at 1:18 PM Andrey Zhizhikin > > wrote: > > > > > > Currently i.MX8MQ EVK board still targeting the old image generation > > > approach for image generation, which relies on the FIT generator that > > > has been dropped from the tree. > > > > > > Switch the board to use binman instead, which is a standard image > > > generator now. > > > > > > Update board documentation to correct build command, and advise latest > > > firmware and TF-A versions to use. > > > > > > NOTE: New image produced by binman does not have Signed HDMI FW support, > > > this has been left on the side and does not interfere with the general > > > boot flow. > > > > > > Tested on: [i.MX8MQ rev2.0] > > > > > > Signed-off-by: Andrey Zhizhikin > > > --- > > > > > > Changes in V2: > > > - Modify binman and documentation to use single flash.bin file instead > > > of flash.bin+u-boot.itb combination, suggested by Fabio Estevam. > > > > Thanks for the rework: > > > > Reviewed-by: Fabio Estevam > > Please consider this one for 2022.01. I believe this ends up being blocked on getting binman / CI happy with the files being missing? -- Tom signature.asc Description: PGP signature
Re: [PATCH v2] imx8mq_evk: switch board to use binman for images
Hi Tom and Stefano, On Fri, Dec 3, 2021 at 1:27 PM Fabio Estevam wrote: > > Hi Andrey, > > On Fri, Dec 3, 2021 at 1:18 PM Andrey Zhizhikin > wrote: > > > > Currently i.MX8MQ EVK board still targeting the old image generation > > approach for image generation, which relies on the FIT generator that > > has been dropped from the tree. > > > > Switch the board to use binman instead, which is a standard image > > generator now. > > > > Update board documentation to correct build command, and advise latest > > firmware and TF-A versions to use. > > > > NOTE: New image produced by binman does not have Signed HDMI FW support, > > this has been left on the side and does not interfere with the general > > boot flow. > > > > Tested on: [i.MX8MQ rev2.0] > > > > Signed-off-by: Andrey Zhizhikin > > --- > > > > Changes in V2: > > - Modify binman and documentation to use single flash.bin file instead > > of flash.bin+u-boot.itb combination, suggested by Fabio Estevam. > > Thanks for the rework: > > Reviewed-by: Fabio Estevam Please consider this one for 2022.01. Thanks
Re: [PATCH v2] imx8mq_evk: switch board to use binman for images
Hi Andrey, On Fri, Dec 3, 2021 at 1:18 PM Andrey Zhizhikin wrote: > > Currently i.MX8MQ EVK board still targeting the old image generation > approach for image generation, which relies on the FIT generator that > has been dropped from the tree. > > Switch the board to use binman instead, which is a standard image > generator now. > > Update board documentation to correct build command, and advise latest > firmware and TF-A versions to use. > > NOTE: New image produced by binman does not have Signed HDMI FW support, > this has been left on the side and does not interfere with the general > boot flow. > > Tested on: [i.MX8MQ rev2.0] > > Signed-off-by: Andrey Zhizhikin > --- > > Changes in V2: > - Modify binman and documentation to use single flash.bin file instead > of flash.bin+u-boot.itb combination, suggested by Fabio Estevam. Thanks for the rework: Reviewed-by: Fabio Estevam
[PATCH v2] imx8mq_evk: switch board to use binman for images
Currently i.MX8MQ EVK board still targeting the old image generation approach for image generation, which relies on the FIT generator that has been dropped from the tree. Switch the board to use binman instead, which is a standard image generator now. Update board documentation to correct build command, and advise latest firmware and TF-A versions to use. NOTE: New image produced by binman does not have Signed HDMI FW support, this has been left on the side and does not interfere with the general boot flow. Tested on: [i.MX8MQ rev2.0] Signed-off-by: Andrey Zhizhikin --- Changes in V2: - Modify binman and documentation to use single flash.bin file instead of flash.bin+u-boot.itb combination, suggested by Fabio Estevam. arch/arm/dts/imx8mq-evk-u-boot.dtsi | 124 ++ arch/arm/mach-imx/imx8m/Kconfig | 1 + board/freescale/imx8mq_evk/Kconfig| 2 +- .../imx8mq_evk/imximage-8mq-lpddr4.cfg| 9 ++ configs/imx8mq_evk_defconfig | 2 +- doc/board/nxp/imx8mq_evk.rst | 21 +-- 6 files changed, 148 insertions(+), 11 deletions(-) create mode 100644 board/freescale/imx8mq_evk/imximage-8mq-lpddr4.cfg diff --git a/arch/arm/dts/imx8mq-evk-u-boot.dtsi b/arch/arm/dts/imx8mq-evk-u-boot.dtsi index 2cfc12b7e0..e3f780ca75 100644 --- a/arch/arm/dts/imx8mq-evk-u-boot.dtsi +++ b/arch/arm/dts/imx8mq-evk-u-boot.dtsi @@ -1,5 +1,129 @@ // SPDX-License-Identifier: (GPL-2.0 OR MIT) +/ { + binman: binman { + multiple-images; + }; +}; + + { + u-boot-spl-ddr { + filename = "u-boot-spl-ddr.bin"; + pad-byte = <0xff>; + align-size = <4>; + align = <4>; + + u-boot-spl { + align-end = <4>; + }; + + blob_1: blob-ext@1 { + filename = "lpddr4_pmu_train_1d_imem.bin"; + size = <0x8000>; + }; + + blob_2: blob-ext@2 { + filename = "lpddr4_pmu_train_1d_dmem.bin"; + size = <0x4000>; + }; + + blob_3: blob-ext@3 { + filename = "lpddr4_pmu_train_2d_imem.bin"; + size = <0x8000>; + }; + + blob_4: blob-ext@4 { + filename = "lpddr4_pmu_train_2d_dmem.bin"; + size = <0x4000>; + }; + }; + + spl { + filename = "spl.bin"; + + mkimage { + args = "-n spl/u-boot-spl.cfgout -T imx8mimage -e 0x7e1000"; + + blob { + filename = "u-boot-spl-ddr.bin"; + }; + }; + }; + + itb { + filename = "u-boot.itb"; + + fit { + description = "Configuration to load ATF before U-Boot"; + #address-cells = <1>; + fit,external-offset = ; + + images { + uboot { + description = "U-Boot (64-bit)"; + type = "standalone"; + arch = "arm64"; + compression = "none"; + load = ; + + uboot_blob: blob-ext { + filename = "u-boot-nodtb.bin"; + }; + }; + + atf { + description = "ARM Trusted Firmware"; + type = "firmware"; + arch = "arm64"; + compression = "none"; + load = <0x91>; + entry = <0x91>; + + atf_blob: blob-ext { + filename = "bl31.bin"; + }; + }; + + fdt { + description = "NAME"; + type = "flat_dt"; + compression = "none"; + + uboot_fdt_blob: blob-ext { + filename = "u-boot.dtb"; + }; + }; + }; + + configurations { + default = "conf"; + + conf { + description = "NAME"; +