IMX8QXP: M40 boot issue

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

IMX8QXP: M40 boot issue

2,356 Views
PBR
Contributor IV

Hello,

I have a Roadlink Daughter card with a IMX8-QXP-C0 and I am using Yocto for building software.
I have 2 different M40 behaviors following if I boot from SD card or QSPI with the same Linux image.

*** Boot from SD Card ***
When the board is configured to boot from SD card (switches: 0011), I switch the board on.
I have the u-boot prompt and the M40 is running.
I have: fdt_file=imx8qxp-mek-rpmsg.dtb
When I boot the linux from u-boot, the M40 is still running without any problem.

*** Boot from QSPI ***
Now I build my yocto project with the following line added in the .../v2x-layers/meta-nxp-v2x-refbsp/conf/layer.conf file:
UBOOT_CONFIG_imx8qxpc0mek = "fspi"

After building the Yocto project, I use UUU to download the binary in the QSPI (switches : 0001):
uuu -b qspi imx-boot-imx8qxpc0mekroadlink-fspi.bin-flash_spl_flexspi

When the board is configured to boot from QSPI (switches: 0110), I switch the board on.
I have the u-boot prompt BUT the M40 is NOT running.
Also I have: fdt_file=imx8qxp-mek.dtb (and not fdt_file=imx8qxp-mek-rpmsg.dtb)

When I manually load the M40 software:
fatload mmc 1:1 0x80280000 imx8qx_m4_TCM_power_mode_switch.bin;
dcache flush; bootaux ${loadaddr} 0

The m40 works.
But if I launch the linux image which is on the SD card (so with the same linux as before but another DTB), the M40 stops.


So why the QSPI build file does not include M40 binary?
Why does Linux stop the M40 following the boot?
How could I make the M40 working?


Thank you for your help.

10 Replies

2,298 Views
josephzhou1
Contributor V

good

Best Regards,
Joseph Zhou Jianhui / Senior Embedded Software Engineer, Singapore
0 Kudos

2,325 Views
PBR
Contributor IV

 

Hello Aldo,

 

Thank you for your answer.

Using Yocto, how can I be sure to integrate M4 in my uboot bin?

When I build without the line UBOOT_CONFIG_imx8qxpc0mek = "fspi", M4 is included.

But with this line (which is required in order to have the QSPI binary), it does not seem to be included.

Why is there a difference? How could I do to explicitly include M4 in Yocto build?


I am using the same DTB (imx8qxp-mek-rpmsg.dtb) in both case, I am just rename it for the QSPI case.

As I am using Yocto, I am not sure it is compatible with MCUXpresso.

Best regards.

2,308 Views
PBR
Contributor IV

Hello Aldo,

 

Don't you have any clues in order to include M4 when building a QSPI binary under Yocto?

What is strange is it is automatically included when building SD binary.

 

Thank you for your help.

2,332 Views
AldoG
NXP TechSupport
NXP TechSupport

Hello,

Please make sure that it builds the uboot bin which does include the M4 bin as well.

Which dtb are you using for the case of booting M$ core and Linux manually?
Since if I understood correctly you're using a different one from default and rpmsg one.

For creating a QSPI uboot bin, you may refer to the SDK documentation Getting Started with MCUXpresso SDK for MEK-MIMX8QM chapter Build an bootable image using imx-mkimage tool

Best regards,
Aldo.

2,275 Views
PBR
Contributor IV

Hello Aldo,

 

Don't you have any clue to include M4 for QSPI when using Yocto as described in my previous post?

 

Best regards.

0 Kudos

2,336 Views
PBR
Contributor IV

Anybody could help me?

2,221 Views
BiyongSUN
NXP Employee
NXP Employee
 
try flash_regression_linux_m4_xip in imx-mkimage
 
flash_regression_linux_m4_xip : $(MKIMG) $(AHAB_IMG) scfw_tcm.bin u-boot-atf.bin m4_image.bin $(QSPI_HEADER)
    ./$(MKIMG) -soc QX -rev B0 -dev flexspi -append $(AHAB_IMG) -c -flags 0x00200000 -scfw scfw_tcm.bin -fileoff 0x80000 -p3 -m4 m4_image.bin 0 0x08081000 -fileoff 0x180000 -ap u-boot-atf.bin a35 0x80000000 -out flash.bin
    ./$(QSPI_PACKER) $(QSPI_HEADER)
0 Kudos

2,190 Views
PBR
Contributor IV

Hello BiyongSUN,

 

I compiled and I created imx-boot-imx8qxpc0mekroadlink-fspi.bin-flash_regression_linux_m4_xip file.

Unfortunately, I did not succeed to put on my QSPI with uuu:

uuu -b qspi imx-boot-imx8qxpc0mekroadlink-fspi.bin-flash_regression_linux_m4_xip

uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.3.154-0-g47ddef5

Success 0 Failure 1


2:1355 1/ 1 [HID(W):LIBUSB_ERROR_IO ] SDPS: boot -f imx-boot-imx8qxpc0mekroadlink-fspi.bin-flash_regression_linux_m4_xip -skipfhdr

 

Note: I have no problem to put the imx-boot-imx8qxpc0mekroadlink-fspi.bin-flash_spl_flexspi file on my QSPI.

0 Kudos

2,181 Views
BiyongSUN
NXP Employee
NXP Employee

it is m4  "xip". It could not run by uuu.

xip, the "p", the place here is qspi  nor flash. 

You can try to modify to use tcm. 

And that is why uuu has two parameters for flash the bootloader, which cannot used by uuu. 

1st one is the bootloader can be used by uuu and 2nd is the image flash to the media.

 

Tags (1)
0 Kudos

1,947 Views
c-luo
Contributor III

hi,I have a  question, I use IMX8QXP board, and andoird11 system, I use IMX8QXP MEK source code, I want to delete m4_image.bin,because it will occupy relevant resources.

this is log in uboot:

Moving Image from 0x80280000 to 0x80400000, end=82af0000
## Flattened Device Tree blob at 82af0400
Booting using the fdt blob at 0x82af0400
Using Device Tree in place at 0000000082af0400, end 0000000082b09725
Disable mu@31580000 rsrc 505 not owned
Disable i2c@37230000 rsrc 288 not owned
Disable clock-controller@37630000 rsrc 288 not owned
Disable intmux@37400000 rsrc 289 not owned
Disable clock-controller@37620000 rsrc 287 not owned
Disable clock-controller@5a4d0000 rsrc 62 not owned
Disable i2c@5a810000 rsrc 97 not owned
Disable clock-controller@5ac90000 rsrc 102 not owned
Disable clock-controller@5ac10000 rsrc 97 not owned
Disable clock-controller@5acd0000 rsrc 105 not owned
Disable clock-controller@585a0000 rsrc 411 not owned
Disable imx8x_cm4@0 rsrc 278 not owned
Disable imx8x_cm4@0 rsrc 297 not owned

How can I delete the image.bin or no use it.

and I do it in linux system,but I can't do it on android11. please help me.

Thanks!!

0 Kudos