Open LeSpocky opened 3 months ago
Just porting over those changes leads to a failing build.
At least with my first attempts. Meanwhile got it building successfully after porting the .dtsi changes. However when loading U-Boot with uuu the following error appears on serial console:
U-Boot SPL 2022.04 (May 06 2024 - 11:26:29 +0000)
SOC: 0xa1009300
LC: 0x2040010
M33 prepare ok
Normal Boot
Trying to boot from BOOTROM
Boot Stage: USB boot
Find img info 0x0000000088000000, size 288
Download 724992, Total size 726016
NOTICE: TRDC init done
NOTICE: BL31: v2.10.0 (release):v2.10-20240315-1
NOTICE: BL31: Built : 14:36:53, May 3 2024
U-Boot 2022.04 (May 06 2024 - 11:26:29 +0000)
CPU: i.MX93(52) rev1.1 1700 MHz (running at 1692 MHz)
CPU: Industrial temperature grade (-40C to 105C) at 35C
Reset cause: POR (0x1)
Model: Ka-Ro electronics GmbH QS93-5210 (NXP i.MX93) solder-in module on QSBASE93 baseboard
DRAM: 1 GiB
Core: 199 devices, 20 uclasses, devicetree: separate
MMC: fsl_esdhc mmc@428b0000: no card present
FSL_SDHC: 0 (eMMC), FSL_SDHC: 1
Loading Environment from MMC... OK
Fail to setup video link
In: serial
Out: serial
Err: serial
BuildInfo:
- ELE firmware version 0.0.11-33cda99a
UID: 0x32a65ee5 0x85431aaa 0xfc3798bb 0x85de3651
loading FDT from mmc 0:1 'imx93-qs93-5210.dtb'
** No partition table - mmc 0 **
Couldn't find partition mmc 0:1
'imx93-qs93-5210.dtb' does not exist
Failed to load fdt file: 'imx93-qs93-5210.dtb': -2
Net: Using MAC addr from fuse
MAC addr: 00:0c:c6:0e:50:42
Using MAC addr from fuse
MAC addr: 00:0c:c6:0e:50:43
eth1: ethernet@42890000, eth0: ethernet@428a0000
Boot from USB for uuu
Hit any key to stop autoboot: 0
Looks like the partitions are not found. I guess it is not only the .dtsi but also more pieces from the defconfig like CONFIG_CMD_GPT
which are changed in Yocto BSP? Please port over those changes to U-Boot so it is possible to use this without Yocto.
Alexander Dahl @.***> wrote:
Just porting over those changes leads to a failing build.
At least with my first attempts. Meanwhile got it building successfully after porting the .dtsi changes. However when loading U-Boot with uuu the following error appears on serial console:
U-Boot SPL 2022.04 (May 06 2024 - 11:26:29 +0000) SOC: 0xa1009300 LC: 0x2040010 M33 prepare ok Normal Boot Trying to boot from BOOTROM Boot Stage: USB boot Find img info 0x0000000088000000, size 288 Download 724992, Total size 726016 NOTICE: TRDC init done NOTICE: BL31: v2.10.0 (release):v2.10-20240315-1 NOTICE: BL31: Built : 14:36:53, May 3 2024 U-Boot 2022.04 (May 06 2024 - 11:26:29 +0000) CPU: i.MX93(52) rev1.1 1700 MHz (running at 1692 MHz) CPU: Industrial temperature grade (-40C to 105C) at 35C Reset cause: POR (0x1) Model: Ka-Ro electronics GmbH QS93-5210 (NXP i.MX93) solder-in module on QSBASE93 baseboard DRAM: 1 GiB Core: 199 devices, 20 uclasses, devicetree: separate MMC: fsl_esdhc ***@***.***: no card present FSL_SDHC: 0 (eMMC), FSL_SDHC: 1 Loading Environment from MMC... OK Fail to setup video link In: serial Out: serial Err: serial BuildInfo: - ELE firmware version 0.0.11-33cda99a UID: 0x32a65ee5 0x85431aaa 0xfc3798bb 0x85de3651 loading FDT from mmc 0:1 'imx93-qs93-5210.dtb' ** No partition table - mmc 0 ** Couldn't find partition mmc 0:1 'imx93-qs93-5210.dtb' does not exist Failed to load fdt file: 'imx93-qs93-5210.dtb': -2 Net: Using MAC addr from fuse MAC addr: 00:0c:c6:0e:50:42 Using MAC addr from fuse MAC addr: 00:0c:c6:0e:50:43 eth1: ***@***.***, eth0: ***@***.*** Boot from USB for uuu Hit any key to stop autoboot: 0
Looks like the partitions are not found. I guess it is not only the .dtsi but also more pieces from the defconfig like
CONFIG_CMD_GPT
which are changed in Yocto BSP? Please port over those changes to U-Boot so it is possible to use this without Yocto.The GPT won't appear magically out of thin air. You need to issue the proper 'gpt write' command to create it. Please refer to the 'uuu.auto' script created by our yocto BSP.
Lothar Waßmann --
Ka-Ro electronics GmbH | Pascalstraße 22 | D - 52076 Aachen Phone: +49 2408 1402-0 | Fax: +49 2408 1402-10 Geschäftsführer: Matthias Kaussen Handelsregistereintrag: Amtsgericht Aachen, HRB 4996
www.karo-electronics.de | @.***
Hello Lothar,
thanks for your quick reply. I suspect you did not understand what I'm trying to achieve here? See below.
The GPT won't appear magically out of thin air. You need to issue the proper 'gpt write' command to create it.
The board is still in stock configuration, so the partitions are already present. I did not change any content of the eMMC. Currently I just want to recreate a working U-Boot without the whole Yocto BSP.
Issuing gpt write
in U-Boot is not possible, because CONFIG_CMD_GPT
is not enabled in the defconfig present in this U-Boot fork.
Please refer to the 'uuu.auto' script created by our yocto BSP. Lothar Waßmann --
Nice to know. But even with that knowledge I would have to change U-Boot .config first. We could argue what has to go into the defconfig and what not. My expectation is the defconfig in U-Boot has everything to successfully boot the board, which is currently not possible without changes from another project.
The reason for this is: you patch two things in your (Yocto based) BSP, which can be done directly in this U-Boot tree. Having that kind of changes (.dtsi) and configuration (defconfig) in two different places seems like more work for you and your users?
Regarding the defconfig this might be okay, changing the .config is easy enough. However the dtsi is not changed easily from the build system, especially when looking at the amount of changes done. Maybe the ticket subject was a little misleading?
(Disclaimer: We want to use the Ka-Ro SoM with a different BSP than Yocto, because we have long term experience with that one and near zero experience with Yocto. Of course the U-Boot configuration somehow depends on the actual rootfs, boot method etc. and when progressing further we will use our own, but the dtsi problem still stands.)
Greets Alex
Got a QS93-5210-Evalkit and tried to build this U-Boot tree with proper cross-toolchain only, without a BSP. The images produced do not work on the target board. Details below.
Steps to reproduce:
PATH="/path/to/toolchain:${PATH}" CROSS_COMPILE=aarch64-v8a-linux-gnu- BL31=/path/to/imx93-bl31.bin BINMAN_INDIRS=/path/to/firmware/ddr/synopsys make O=/path/to/build/u-boot/karo qs93-5210_defconfig
PATH="/path/to/toolchain:${PATH}" CROSS_COMPILE=aarch64-v8a-linux-gnu- BL31=/path/to/imx93-bl31.bin BINMAN_INDIRS=/path/to/firmware/ddr/synopsys make O=/path/to/build/u-boot/karo
cd /path/to/build/u-boot/karo
uuu
to transfer and start:/path/to/uuu flash.bin
Guesswork: Building https://github.com/karo-electronics/karo-nxp-bsp from scratch, finding the file flash.bin in some U-Boot build folder and using that with
uuu
actually works. So something in that Yocto BSP is different. Looks like Yocto clones this repo and with changeset https://github.com/karo-electronics/meta-karo-nxp/commit/0dcfb6e046b2a271ae3ab5083d80f6fec4cbf74d overwrites at least the file arch/arm/dts/imx93-karo-u-boot.dtsi … and probably more.Just porting over those changes leads to a failing build.