On Mon Nov 24, 2025 at 5:07 AM CET, Udit Kumar wrote:
>
> On 11/20/2025 9:33 PM, Markus Schneider-Pargmann (TI.com) wrote:
>> When exiting a low power mode with DDR self-refresh, we can directly
>> resume after DDR setup is done. Call the common function to resume.
>>
>> Tested-by: Anshul Dalal <[email protected]>
>> Signed-off-by: Markus Schneider-Pargmann (TI.com) <[email protected]>
>> ---
>>   arch/arm/mach-k3/am62ax/am62a7_init.c | 9 +++++++++
>>   1 file changed, 9 insertions(+)
>>
>> diff --git a/arch/arm/mach-k3/am62ax/am62a7_init.c 
>> b/arch/arm/mach-k3/am62ax/am62a7_init.c
>> index 
>> 60645272c816023798cc5d6fa46a2c569143343b..4f0a8ed66179e7f7445f9c250ffb4f53f4977546
>>  100644
>> --- a/arch/arm/mach-k3/am62ax/am62a7_init.c
>> +++ b/arch/arm/mach-k3/am62ax/am62a7_init.c
>> @@ -195,6 +195,15 @@ void board_init_f(ulong dummy)
>>      ret = uclass_get_device(UCLASS_RAM, 0, &dev);
>>      if (ret)
>>              panic("DRAM init failed: %d\n", ret);
>> +
>> +    if (wkup_ctrl_is_lpm_exit()) {
>> +            u64 meta_data_addr;
>> +
>> +            ret = wkup_r5f_am62_lpm_meta_data_addr(&meta_data_addr);
>> +            if (ret)
>> +                    panic("Failed to get LPM meta data address %d\n", ret);
>> +            lpm_resume_from_ddr(meta_data_addr);
>
> Do be you want to protect this code with DDR_IO config ?

It is protected by K3_IODDR. wkup_ctrl_is_lpm_exit() only checks the
actual registers if K3_IODDR is set:

        bool wkup_ctrl_is_lpm_exit(void)
        {
                return IS_ENABLED(CONFIG_K3_IODDR) &&
                        wkup_ctrl_canuart_wakeup_active() &&
                        wkup_ctrl_canuart_magic_word_set();
        )

Best
Markus

Attachment: signature.asc
Description: PGP signature

Reply via email to