Skip to main content
Visitor II
August 19, 2020
Question

Device don't load u-boot after uploaded with STM32_Programmer_CLI

  • August 19, 2020
  • 3 replies
  • 2653 views

I changed name of orginal device-tree of my board stm32mp157c-dk2.dts. Then I tried upload tf-a and uboot to device via STM32_Programmer_CLI. Program proper uploaded tf-a and I see my new Model name but now program wait for reconnecting and my device is hald.

WARNING: Skip signature check (header option)
NOTICE: ROTPK is not deployed on platform. Skipping ROTPK verification.
NOTICE: BL2: Booting BL32
INFO: Entry point address = 0x2ffed000
INFO: SPSR = 0x1d3
NOTICE: SP_MIN: v2.2-r1.0(debug):v2.2-dirty
NOTICE: SP_MIN: Built : 13:36:23, Oct 22 2019
INFO: ARM GICv2 driver initialized
INFO: stm32mp IWDG1 (12): Secure
INFO: SP_MIN: Initializing runtime services
INFO: SP_MIN: Preparing exit to normal world

I don't get any error so I don't know what can be wrong. When I uploaded the same device-tree but with original name u-boot is booting

regards,

Adrian

    This topic has been closed for replies.

    3 replies

    Technical Moderator
    August 24, 2020

    Hi @Adrian Dusiński​ 

    Not clear what you have done exactly.

    Did you recompile Tf-a and Uboot using a renamed/custom dts file ?

    Could you please details steps you follow ?

    Please precise if you are working with ecosystem V1.x ( kernel 4.19) or V2.0 ( kernel 5.4 )

    Thanks

    Olivier

    Adrian1Author
    Visitor II
    August 24, 2020

    Hi,

    Thanks for response.

    To be exact I try this:

    https://wiki.st.com/stm32mpu/wiki/How_to_configure_U-Boot_for_your_board

    I copied original stm32mp157c-dk2 device-tree to stm32mp157-custom, I added this configuration to makefile and I executed:

    make stm32mp15_trusted_defconfig

    make DEVICE_TREE=stm32mp157c-custom all

    So my configuration is the same as stm32mp157c-dk2.

    I also tried set debug to tf-a but it end program after console_flush(); so it works. I don't know how get more debug.

    Regards,

    Adrian

    Adrian1Author
    Visitor II
    September 8, 2020

    I found the problem, in the "board/st/stm32mp1/extlinux.conf" file must be added custom devicetree.

    I think on the page "How to configure U-Boot for your board" is no information about it.

    Regards,

    Adrian

    Visitor II
    September 10, 2020

    Hi Adrian

    I also met this problem. How can I solve it.

    Regards,

    User.44

    Visitor II
    September 10, 2020

    Hi Adrian,

    I don't understood extlinux.conf refence here....

    it is not used for STM32CubeProgrammer load.

    To start your custom device tree for U-Boot based on DK2 :

    cp arch/arm/dts/stm32mp157c-dk2.dts arch/arm/dts/stm32mp157-custom.dts

    it is the kernel device tree

    cp arch/arm/dts/stm32mp157c-dk2-u-boot.dtsi arch/arm/dts/stm32mp157-custom-u-boot.dtsi

    this add-on U-Boot file (stm32mp157-custom-u-boot.dtsi) is MANDATORY to manage u-boot specific property needed in pre-reloc step:

    attribute u-boot,dm-pre-reloc / u-boot,dm-pre-proper => https://wiki.st.com/stm32mpu/wiki/U-Boot_overview#Device_tree.

    Update arch/arm/dts/Makefile to compile your device tree:

    dtb-$(CONFIG_STM32MP15x) +=stm32mp157-custom.dtb

    Then launch compilation

    make DEVICE_TREE=stm32mp157c-custom all

    Patrick