diff options
| author | Simon Glass <[email protected]> | 2021-12-16 20:59:32 -0700 |
|---|---|---|
| committer | Tom Rini <[email protected]> | 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 <[email protected]>
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) { |
