cancel
Showing results for 
Search instead for 
Did you mean: 

Cannot boot stm32mp157c-ev1 with original device tree generated by STM32CubeMX.

HMasu.1
Senior

I’m trying to boot stm32mp157c-ev1 evaluation board with original device tree.

However, cannot boot the board when following steps

--Environment--​

Host PC: Intel Core i7 3.6GHz / Ubuntu Ver16.04.6 LTS

STM32CubeMX: Version 5.6.0

OpenSTLinux: openstlinux-4.19-thud-mp1-20-02-19

--Steps--

1)  Generate device tree sources by STM32CubeMX

2)  Compile the device tree with Developer Package, and Get “kernel DTB�?, “u-boot.stm32�? and “TF-A.stm32�? files.

-according to following wiki page.

https://wiki.st.com/stm32mpu/wiki/How_to_compile_the_device_tree_with_the_Developer_Package#Updating_the_TF-A_device_tree

3)  Flash “u-boot.stm32�? and “TF-A.stm32�? with following FlashLayout file.

#Opt   Id        Name              Type                IP        Offset              Binary

-         0x01    fsbl1-boot        Binary             none    0x0                 tf-a-stm32mp157c-ev1-trusted.stm32

-         0x03    ssbl-boot         Binary             none    0x0                 u-boot-stm32mp157c-ev1-trusted.stm32

P         0x04    fsbl1               Binary             mmc0  0x00004400    tf-a-xxxxxxx-mx-trusted.stm32

P         0x05    fsbl2               Binary             mmc0  0x00044400    tf-a-xxxxxxx-mx-trusted.stm32

P         0x06    ssbl                 Binary             mmc0  0x00084400    u-boot.stm32

-         0x21    bootfs             System            mmc0  0x00284400    st-image-bootfs-openstlinux-weston-stm32mp1.ext4

-         0x22    vendorfs          FileSystem       mmc0  0x04284400    st-image-vendorfs-openstlinux-weston-stm32mp1.ext4

-         0x23    rootfs              FileSystem       mmc0  0x05284400    st-image-weston-openstlinux-weston-stm32mp1.ext4

-         0x24    userfs              FileSystem       mmc0  0x33C84400    st-image-userfs-openstlinux-weston-stm32mp1.ext4

During this steps, There was no error.

However, when trying to boot the devices, following error message show and cannot boot the device.

PANIC at PC : 0x2ffd8000

Exeption mode=0x00000016 at: 0x2ffd8000

On the other hand, if I flash only “TF-A.stm32�? firstly, and then flash “u-boot.stm32�? individually, Booting the device was success.

Why do these two ways produce different results?

Would you be able to lend your expertise.

Best regards

1 ACCEPTED SOLUTION

Accepted Solutions
Olivier GALLIEN
ST Employee

Hi @HMasu.1​ 

The fail boot log is not complete but only contain the PANIC message.

Anyway, the CubeMX project you sent CANNOT generate a bootable Device Tree.

CubeMX only generate "bootable" Device Tree for ST Board Project ( DK2 or EV1).

You have to carefully fill the USER SECTION according to your hardware taking EV1 Device tree as example.

Below wiki article to start :

https://wiki.st.com/stm32mpu/index.php/How_to_create_your_board_device_tree

Hope it help

Olivier

Olivier GALLIEN
In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

View solution in original post

5 REPLIES 5
Olivier GALLIEN
ST Employee

Hi @HMasu.1​ 

Did you change anything in CubeMX compare to a default EV1 board project ?

Can you share both complete boot log : the one fail with PANIC and the one succeed after individual flash.

Thanks

Olivier

Olivier GALLIEN
In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
HMasu.1
Senior

Hi OlivierG (ST Employee)

Thank you for your answer.

I have Changed many settings in Cube MX because my final goal is to operate my original board which STM32MP151CAA3 MPU is mounted on.

So, I share Cube MX project file and complete boot logs(success and fail).

Please check the attached files.

Thank you

H. Masuda

Olivier GALLIEN
ST Employee

Hi @HMasu.1​ 

The fail boot log is not complete but only contain the PANIC message.

Anyway, the CubeMX project you sent CANNOT generate a bootable Device Tree.

CubeMX only generate "bootable" Device Tree for ST Board Project ( DK2 or EV1).

You have to carefully fill the USER SECTION according to your hardware taking EV1 Device tree as example.

Below wiki article to start :

https://wiki.st.com/stm32mpu/index.php/How_to_create_your_board_device_tree

Hope it help

Olivier

Olivier GALLIEN
In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

Hi @Community member​ 

Thank you for your answer.

Sorry, I don't know how to get complete boot log file.

Previous log text files attached this thread are all message that console shows. ​

>CubeMX only generate "bootable" Device Tree for ST Board Project ( DK2 or EV1).

>You have to carefully fill the USER SECTION according to your hardware taking EV1 Device tree as example.

Thank you for sharing the valuable information. I understand what is missing in my steps.

I will fill the User Section referring to the EV1 device tree..

Thank you for your kind support.

H.Masuda

HMasu.1
Senior

Hi @Community member​ 

Please let me ask again.

I tried to fill the User Section in device trees ​referring to the EV1 device tree.

However, the same boot error is displayed as before.

What could be the cause of the error?

Or, what should I try to get more information?

I share Cube MX project file and device tree source files(one is a original file from CubeMX, the other is a modified in user section) and display's capture when boot error occurs.

Please check the attached files.

Would you be able to lend your expertise.

Best regards

H. Masuda