Please pull u-boot-watchdog/next

Stefan Roese sr at denx.de
Sat Sep 17 09:22:26 CEST 2022


Hi Tom,

On 16.09.22 23:48, Tom Rini wrote:

<snip>

>> Thanks for testing. I do have one last experiment for tonight. Please
>> give the attached v2 a try.
>>
>> Thanks,
>> Stefan
> 
>>  From 2f61bc2cf011190eedbc0be34b4d61f342e7e5a5 Mon Sep 17 00:00:00 2001
>> From: Stefan Roese <sr at denx.de>
>> Date: Fri, 16 Sep 2022 21:08:51 +0200
>> Subject: [PATCH v2] cyclic: Only call cyclic_run() from schedule() when it's
>>   ready
>>
>> schedule() might get called very early in the boot process (SPL etc),
>> when the cyclic IF is not initialized. Let's make sure, that we only
>> call into cyclic_run() when it's ready.
>>
>> Signed-off-by: Stefan Roese <sr at denx.de>
>> ---
>>   common/cyclic.c | 7 ++++++-
>>   1 file changed, 6 insertions(+), 1 deletion(-)
>>
>> diff --git a/common/cyclic.c b/common/cyclic.c
>> index 594f9cd92592..b3c180bd1a62 100644
>> --- a/common/cyclic.c
>> +++ b/common/cyclic.c
>> @@ -104,7 +104,12 @@ void schedule(void)
>>   	if (IS_ENABLED(CONFIG_HW_WATCHDOG))
>>   		hw_watchdog_reset();
>>   
>> -	cyclic_run();
>> +	/*
>> +	 * schedule() might get called very early before the cyclic IF is
>> +	 * ready. Make sure to only call cyclic_run() when it's initalized.
>> +	 */
>> +	if (gd && gd->cyclic && gd->cyclic->cyclic_ready)
>> +		cyclic_run();
>>   }
>>   
>>   int cyclic_uninit(void)
> 
> This worked and both boards that failed before now pass.

Perfect. Thanks again for testing.

I'll re-spin v2 of the patchset with this patch squashed in, so that
git bisect'ing will work.

Thanks,
Stefan


More information about the U-Boot mailing list