[Uboot-stm32] [PATCH] stm32mp2: update register used by BL31 for boot parameter

Patrice CHOTARD patrice.chotard at foss.st.com
Tue Sep 30 17:42:50 CEST 2025



On 9/18/25 14:49, Patrice CHOTARD wrote:
> 
> 
> On 9/17/25 14:31, Patrick Delaunay wrote:
>> Use the ARM64 kernel booting register settings, defined in Linux
>> documentation Documentation/arch/arm64/booting.rst:
>>
>>  x0 = physical address of device tree blob (dtb) in system RAM.
>>
>> so kernel can replace U-Boot in FIP without modification of BL31.
>>
>> Use x0 for future TF-A version and keep x2 as fallback to be compatible
>> with previous version of TF-A BL31.
>>
>> Signed-off-by: Patrick Delaunay <patrick.delaunay at foss.st.com>
>> ---
>>
>>  arch/arm/mach-stm32mp/stm32mp2/cpu.c | 16 ++++++++++++----
>>  1 file changed, 12 insertions(+), 4 deletions(-)
>>
>> diff --git a/arch/arm/mach-stm32mp/stm32mp2/cpu.c b/arch/arm/mach-stm32mp/stm32mp2/cpu.c
>> index c3b87d7f9810..e081dc605b84 100644
>> --- a/arch/arm/mach-stm32mp/stm32mp2/cpu.c
>> +++ b/arch/arm/mach-stm32mp/stm32mp2/cpu.c
>> @@ -92,13 +92,21 @@ uintptr_t get_stm32mp_bl2_dtb(void)
>>  }
>>  
>>  /*
>> - * Save the FDT address provided by TF-A in r2 at boot time
>> + * Save the FDT address provided by TF-A at boot time
>>   * This function is called from start.S
>>   */
>> -void save_boot_params(unsigned long r0, unsigned long r1, unsigned long r2,
>> -		      unsigned long r3)
>> +void save_boot_params(unsigned long x0, unsigned long x1, unsigned long x2,
>> +		      unsigned long x3)
>>  {
>> -	nt_fw_dtb = r2;
>> +	/* use the ARM64 kernel booting register settings:
>> +	 * x0 = physical address of device tree blob (dtb) in system RAM.
>> +	 * so kernel can replace U-Boot in FIP wihtout BL31 modification
>> +	 * else falback to x2 used in previous TF-A version
>> +	 */
>> +	if (x0)
>> +		nt_fw_dtb = x0;
>> +	else
>> +		nt_fw_dtb = x2;
>>  
>>  	save_boot_params_ret();
>>  }
> 
> Reviewed-by: Patrice Chotard <patrice.chotard at foss.st.com>
> 
> Thanks
> Patrice


Applied to u-boot-stm32/master

Thanks
Patrice

> _______________________________________________
> Uboot-stm32 mailing list
> Uboot-stm32 at st-md-mailman.stormreply.com
> https://st-md-mailman.stormreply.com/mailman/listinfo/uboot-stm32


More information about the U-Boot mailing list