Hey everybody,
I work currently with this Config:
MACHINE=imx6qdlsabresd DISTRO=fslc-framebuffer source setup-environment build
on this repo:
GitHub - Freescale/fsl-community-bsp-platform at zeus
When i build the core-image-minimal, everthing compiles.
But my main problem is how to flash this "image" ( u-boot,zImage and rootFS) on the device?
And is there a simple trick to create the same stuff for the mfg (uuu) ?
Because I tried to build "fsl-image-mfgtool-initramfs" but I got this error message:
ERROR: Nothing PROVIDES 'u-boot-mfgtool' (but /fsl-community-bsp/sources/meta-freescale/recipes-fsl/images/fsl-image-mfgtool-initramfs.bb DEPENDS on or otherwise requires it)
u-boot-imx-mfgtool PROVIDES u-boot-mfgtool but was skipped: You cannot use UBOOT_MACHINE and UBOOT_CONFIG at the same time.
ERROR: Required build target 'fsl-image-mfgtool-initramfs' has no buildable providers.
Missing or unbuildable dependency chain was: ['fsl-image-mfgtool-initramfs', 'u-boot-mfgtool']
Thanks.
Benedikt
Hi benedikt,
Thank you for answering. It would be helpful for me ^^, by the way, I have one more question about DEVICE TREE.
In my understanding, uboot have included device tree blob in uboot image, but kernel have independent dtb.
I am consusing about that, I should match same dtb name both in uboot and kernel? For example, imx6qsabresd.dtb in uboot and imx6qsabreauto.dtb, is that unavailable? I am sorry for you, but I just am curious.
Thank you in advance
Hi guys,
I have same problem, dtb file exists in emmc actually, but loadfdt doesn't work, doesn't read dtb file from emmc so that
bootz starts wrong at ram address.
Could you please guide me to check some points?
Hey Yibeom Han,
please check if the dtb file exist on the emmc.
You can do that with this "ls mmc 3" command in uboot. In this case 3 is the device number. Maybe it is another number on your board.
This should be the output:
=> ls mmc 3:1
40437 YOURDTBFILE.dtb
8519672 zImage
2 file(s), 0 dir(s)
Then check this in the uboot env:
=> print fdt_file
fdt_file=undefined
now use setenv to write "YOURDTBFILE.dtb" to the fdt_file variable:
=> setenv fdt_file YOURDTBFILE.dtb
=> printenv fdt_file
fdt_file=YOURDTBFILE.dtb
Save the Environment to MMC!
=> saveenv
Saving Environment to MMC... Writing to MMC(3)... OK
Greetings
Benedikt
Hi Benedikt Cyranka,
## Booting kernel from Legacy Image at 12000000 ...
Load Address: 10008000
Entry Point: 10008000
The different address should not be the issue. 12000000 is the load address for kernel and 10008000 is the entry point from where the u-boot starts at the reset.
Regards,
Karan Gajjar
Hey everyboy,
I resolved my question with your help.
Thanks!
To resolve the problem I used the Repo that is discribed in the new Version of the documentation that you send in this thread.
It is not longer required to build the mfg-initramfs image.
I just build "bitbake pseudo-native" and after this it is possible to build "bitbake imx-image-core".
After this process all needed files are in the depoly directory.
But I have still an issue...
I can write with the uuu the u-boot, kernel and rootfs to the mmc. But the kernel freeze with "Startin Kernel ...".
My uuu command: "uuu -b emmc_all u-boot.imx imx-image-core-imx6dlsabresd.wic.bz2"
Serial Output |
---|
U-Boot 2019.04-lf-5.4.y_v2019.04+g228843c (Apr 16 2020 - 13:10:12 +0000) CPU: Freescale i.MX6SOLO rev1.3 996 MHz (running at 792 MHz) Starting kernel ... |
You need to set the right boot command when u-boot boot up, in boot command line.
Hey Rita,
what is the right boot command?
This is my current u-boot env: |
---|
=> printenv Environment size: 4775/8188 bytes |
I tried my own fdt_file=pxc_bwp2102w.dtb but it doesn't work.
But the file exist on the mmc:
ls mmc 3:1
40437 pxc_bwp2102w.dtb
8519672 zImage
2 file(s), 0 dir(s)
Greetings
Benedikt
Maybe I found my problem:
## Booting kernel from Legacy Image at 12000000 ...
Image Name: Linux-5.4.3-lts-lf-5.4.y+gf81185
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 8519672 Bytes = 8.1 MiB
Load Address: 10008000
Entry Point: 10008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
No gpc device node -9, force to ldo-enable.
Starting kernel ...
There is a mismatch between the address in the ram.
Can you tell me where exactly is this defined in the yocto project?
Greetings
Benedikt
Hi Benedikt Cyranka,
Along with the information provided by Rita, You can directly load the .wic image into the SD card and load the SD card on the board. Please find the steps to flash an SD card image in Section 6.1 from the attached 'i.MX_Yocto_Project_User's_Guide.pdf'. If you want to load the individual components (u-boot, kernel, roots, etc...) separately, you can check the steps for the same in section 4.3 of attached 'i.MX_Linux_User's_Guide.pdf'.
Regards,
Karan Gajjar
Hey Karan,
I have no sd card slot on my device. Only Serial, USB, Ethernet and a USB for the MFG Tool.
Because of this I want to use the MFG Tool to flash the device.
Regards,
Benedikt
Hi Benedikt Cyranka,
You can use the i.MX Linux user guide for Zeus release and look into flashing images to eMMC.
Regards,
Karan Gajjar
Hey Karen,
in the i.MX Yocto Project pdf I found under 5.2 Choosing an i.MX Yocto project image nothing about the "fsl-image-mfgtool-initramfs" that you describe in the older version of this dcoument.
Unfortunately I also found nothing about how to build the u-boot and kernel for the mfg-tool (uuu).
I found in the i.MX_Linux_users_guide.pdf under 4.2.2 Using UUU, a short describstion how to flash the bootloader and rootfs to the emmc. In the MFG Tool 2 there was a mfg tool u-boot and kernel needed. The MFG Tool 2 loads these two into the ram and starts it. After this the MFG Tool 2 partition the emmc and flash the "normal" u-boot, kernel and rootfs to the emmc.
Is this no longer neederd with UUU (MFG Tool 3)?
Regards,
Benedikt
Hi Benedikt Cyranka,
If you use UUU to load '.wic' file along with bootloader as described, you no longer required anything to load further. Still, you can refer UUU user guide https://github.com/NXPmicro/mfgtools/releases/download/uuu_1.3.154/UUU.pdf and check for 'write' command to load the individual module at a specific address if you required in any case.
Regards,
Karan Gajjar
Could you tell us which version of BSP are you using?
I use zeus.
For the mfgtool (uuu) , Using Yocto Project and bibake mfgtool-linux-imx for kernel firmware and bitbake u-boot-mfgtool for uboot firmware.
Hey Rita,
I got this messages if I try to build this two recepies:
bitbake mfgtool-linux-imx
ERROR: Nothing PROVIDES 'mfgtool-linux-imx'
bitbake u-boot-mfgtool
ERROR: Nothing PROVIDES 'u-boot-mfgtool'
u-boot-imx-mfgtool PROVIDES u-boot-mfgtool but was skipped: You cannot use UBOOT_MACHINE and UBOOT_CONFIG at the same time.
So what is the correct way to build the uuu files in yocto.
Thanks,
Terry