[PATCH 1/5] cyclic: Disable in SPL builds

Stefan Roese sr at denx.de
Mon Dec 4 08:30:20 CET 2023


Hi Simon,

On 11/19/23 19:23, Simon Glass wrote:
> Hi Tom,
> 
> On Sun, 19 Nov 2023 at 08:59, Tom Rini <trini at konsulko.com> wrote:
>>
>> On Sun, Nov 19, 2023 at 07:46:39AM -0700, Simon Glass wrote:
>>
>>> The cyclic subsystem is currently enabled in all build phases or none.
>>> So far it doesn't have any purpose within SPL builds, so adjust the
>>> rules to prevent it being built in that case.
>>>
>>> Signed-off-by: Simon Glass <sjg at chromium.org>
>>> ---
>>>
>>>   common/Makefile  | 2 +-
>>>   include/cyclic.h | 6 ++++--
>>>   2 files changed, 5 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/common/Makefile b/common/Makefile
>>> index 1495436d5d45..27443863bf9b 100644
>>> --- a/common/Makefile
>>> +++ b/common/Makefile
>>> @@ -77,7 +77,7 @@ obj-$(CONFIG_CROS_EC) += cros_ec.o
>>>   obj-y += dlmalloc.o
>>>   obj-$(CONFIG_$(SPL_TPL_)SYS_MALLOC_F) += malloc_simple.o
>>>
>>> -obj-$(CONFIG_CYCLIC) += cyclic.o
>>> +obj-$(CONFIG_$(SPL_TPL_)CYCLIC) += cyclic.o
>>>   obj-$(CONFIG_$(SPL_TPL_)EVENT) += event.o
>>>
>>>   obj-$(CONFIG_$(SPL_TPL_)HASH) += hash.o
>>
>> This is fine, but I suspect we're missing SPL_CYCLIC as a symbol and
>> SPL_WDT should be select'ing that, same as "WDT".
> 
> Ooops I had assumed that it wasn't used in SPL but of course watchdog
> is completely migrated to it now...I will add a symbol.
> 
> BTW the watchdog Kconfig seems a little confusiing. There is only one
> board using WATCHDOG without WDT and only 3 using HW_WATCHDOG
> 
> Setfan, I wonder if some more clean-up could be done?

I fully agree that the watchdog Kconfig options are confusing. Perhaps
I can find some time in the Holidays to try to clean this up and finally
get rid of this HW_WATCHDOG stuff completely.

Thanks,
Stefan

>>
>>> diff --git a/include/cyclic.h b/include/cyclic.h
>>> index 44ad3cb6b803..d3b368dd90df 100644
>>> --- a/include/cyclic.h
>>> +++ b/include/cyclic.h
>>> @@ -11,6 +11,7 @@
>>>   #ifndef __cyclic_h
>>>   #define __cyclic_h
>>>
>>> +#include <linux/kconfig.h>
>>>   #include <linux/list.h>
>>>   #include <asm/types.h>
>>
>> Is this really needed? What's blowing up since we should have -include
>> .../linux/kconfig.h cover this.
> 
> It is the CONFIG_IS_ENABLED() when building. We have kconfig.h in a
> few other places (used by tools) too.
> 
> In file included from include/watchdog.h:13,
>                   from tools/../lib/sha1.c:25,
>                   from tools/generated/lib/sha1.c:1:
> include/cyclic.h:47:22: error: missing binary operator before token "("
>     47 | #if CONFIG_IS_ENABLED(CYCLIC)
>        |                      ^
> 
> Regards,
> Simon

Viele Grüße,
Stefan Roese

-- 
DENX Software Engineering GmbH,      Managing Director: Erika Unter
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr at denx.de


More information about the U-Boot mailing list