summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorRasmus Villemoes <rasmus.villemoes@prevas.dk>2022-10-28 14:50:51 +0300
committerStefan Roese <sr@denx.de>2022-11-02 10:41:42 +0300
commit6b84b1db2d69609a783ab2fd6990c9e72903d367 (patch)
tree6be338c661d689c9cb1b7e64dd046b283785a0e0 /common
parentd7de5ef629352fe12ad99b6539ba1480b923f31e (diff)
downloadu-boot-6b84b1db2d69609a783ab2fd6990c9e72903d367.tar.xz
cyclic: drop redundant cyclic_ready flag
We're already relying on gd->cyclic being NULL before cyclic_init() is called - i.e., we're relying on all of gd being zeroed before entering any C code. And when we do populate gd->cyclic, its ->cyclic_ready member is automatically set to true. So we can actually just rely on testing gd->cyclic itself. The only wrinkle is that cyclic_uninit() actually did set ->cyclic_ready to false. However, since it doesn't free gd->cyclic, the cyclic infrastructure is actually still ready (i.e., the list_head is properly initialized as an empty list). Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Reviewed-by: Stefan Roese <sr@denx.de> Tested-by: Stefan Roese <sr@denx.de> Tested-by: Tim Harvey <tharvey@gateworks.com> # imx8mm-venice-*
Diffstat (limited to 'common')
-rw-r--r--common/cyclic.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/common/cyclic.c b/common/cyclic.c
index ff75c8cadb..d6f11b002e 100644
--- a/common/cyclic.c
+++ b/common/cyclic.c
@@ -30,7 +30,7 @@ struct cyclic_info *cyclic_register(cyclic_func_t func, uint64_t delay_us,
{
struct cyclic_info *cyclic;
- if (!gd->cyclic->cyclic_ready) {
+ if (!gd->cyclic) {
pr_debug("Cyclic IF not ready yet\n");
return NULL;
}
@@ -112,7 +112,7 @@ void schedule(void)
* 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)
+ if (gd && gd->cyclic)
cyclic_run();
}
@@ -122,7 +122,6 @@ int cyclic_uninit(void)
list_for_each_entry_safe(cyclic, tmp, &gd->cyclic->cyclic_list, list)
cyclic_unregister(cyclic);
- gd->cyclic->cyclic_ready = false;
return 0;
}
@@ -137,7 +136,6 @@ int cyclic_init(void)
memset(gd->cyclic, '\0', size);
INIT_LIST_HEAD(&gd->cyclic->cyclic_list);
- gd->cyclic->cyclic_ready = true;
return 0;
}