Skip to main content
Grodriguez
Associate III
Aug 26, 2020 8:14 AM UTC
Solved

Booting kernel 5.4.31 from BSP 2.0.0 with "old" bootchain

Hi all,

I am trying to upgrade the kernel on a board running STM32MP15 BSP v1.2.0. From what I have seen, the kernel from BSP 2.0.0 is not compatible with the tf-a and u-boot used in previous BSP versions; I assume that this is due to a change in the way clocks/resets are managed (commit), which introduces a dependency on SCMI services provided by tf-a.

On the other hand I see that a stm32mp15-no-scmi.dtsi file was introduced (commit) to "revert" this SCMI dependency.

If I am correct, using this dtsi file in my device tree should make it possible to upgrade the kernel only, and still use the "old" tf-a and uboot from BSP 1.2.0. However I tried this and it does not seem to work (kernel hangs immediately after the "Starting kernel ..." message).

Do I need something else? What am I missing?

Thank you,

Guillermo

This topic has been closed for replies.
Olivier GALLIEN
Olivier GALLIENBest answer
ST Technical Moderator
Aug 27, 2020 8:47 AM UTC

Hi @Grodriguez​ 

Indeed introduction of SCMI is the main compatibility break between new kernel and old boot chain ...

But there can be few others on ST side ( DVFS) but also from Community side.

That's why we recommend to take the new kernel inside the compatible Yocto dunfell baseline distribution.

For my information what's the benefit for you to not take the whole V2.0 BSP ?

Olivier

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.

2 replies

Olivier GALLIEN
Olivier GALLIENBest answer
ST Technical Moderator
Aug 27, 2020 8:47 AM UTC

Hi @Grodriguez​ 

Indeed introduction of SCMI is the main compatibility break between new kernel and old boot chain ...

But there can be few others on ST side ( DVFS) but also from Community side.

That's why we recommend to take the new kernel inside the compatible Yocto dunfell baseline distribution.

For my information what's the benefit for you to not take the whole V2.0 BSP ?

Olivier

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.
Grodriguez
Associate III
Aug 28, 2020 11:32 AM UTC

Hi @Community member​ 

Mainly because I need to do a lot of testing to ensure that the upgrade does not introduce any breaking changes in my application/setup, and I expected to be able to do so in several steps rather than "all at once".

Also I was trying to understand what was going on: I had tried to update the kernel only and that didn't work. I didn't expect that it would be necessary to update tf-a and u-boot as well. I mean, it is relatively normal to update the kernel of a product that is already in the field, but normally bootloaders are not updated.

Can you provide any info on the other breaking change you mention (DVFS) ?

Also, is there any documentation of what are the expectations / requirements that the bootloader must meet before starting the kernel?

Guillermo