diff options
author | Simon Glass <sjg@chromium.org> | 2021-12-16 20:59:32 -0700 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2021-12-23 10:24:40 -0500 |
commit | 6476c4d9818beac88610f18ff3c3cb05c7a1f33b (patch) | |
tree | 90bbf1c2bbaa910806e695a472bc52000056721d /drivers/core/uclass.c | |
parent | 985503439762c3168aeb80f529bb9bbcd773dd2c (diff) |
dm: core: Allow getting some basic stats
Add a function that returns some basic stats about driver model. For now
we only have two.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'drivers/core/uclass.c')
-rw-r--r-- | drivers/core/uclass.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/core/uclass.c b/drivers/core/uclass.c index 2aa21430775..336ea8d243d 100644 --- a/drivers/core/uclass.c +++ b/drivers/core/uclass.c @@ -643,6 +643,19 @@ int uclass_next_device_check(struct udevice **devp) return device_probe(*devp); } +int uclass_get_count(void) +{ + const struct uclass *uc; + int count = 0; + + if (gd->dm_root) { + list_for_each_entry(uc, gd->uclass_root, sibling_node) + count++; + } + + return count; +} + int uclass_first_device_drvdata(enum uclass_id id, ulong driver_data, struct udevice **devp) { |