On 18.06.21 14:52, Rasmus Villemoes wrote:
On 18/06/2021 13.14, Teresa Remmet wrote:
There is no separate SPL/TPL config for WATCHDOG_AUTOSTART.
So use IS_ENABLED instead of CONFIG_IS_ENABLED to make watchdog
working in spl again.

I suppose it doesn't make sense to introduce SPL/TPL variants of that
(if one wants to handle a watchdog early, it should be handled early),
so ack.

But this whole thing seems extremely fragile. There really should be
some kind of sanity check, maybe just scripted run over the tree once in
while, that finds such issues.

I whole-heartily agree. I'm pretty sure, that the U-Boot source tree is
cluttered with misuses of these constructs.

A very naive approach like

git grep -E -o 'CONFIG_IS_ENABLED\(\s*[A-Z0-9a-z_]*' | cut -f2 -d'(' |
sort -u | while read x ; do if ! git grep -q "config SPL_$x" && ! git
grep -q "config TPL_$x" ; then echo "No SPL or TPL variant of CONFIG_$x"
; fi ; done

finds a lot of stuff, but most are probably in files that cannot be
built for SPL/TPL (e.g. all the CMD_ stuff), so false positives. But
there's also somewhat amusing examples like

#if CONFIG_IS_ENABLED(FIT_PRINT) || CONFIG_IS_ENABLED(SPL_FIT_PRINT)

(which we find because there's no SPL_SPL_FIT_PRINT...).

It would be great if someone (you?) could come up with such a script.

Thanks,
Stefan

Reply via email to