Add another loop to dump additional info from clock providers that
implement dump operation.

Signed-off-by: Igor Prusov <ivpru...@sberdevices.ru>
Reviewed-by: Patrice Chotard <patrice.chot...@foss.st.com>
Tested-by: Patrice Chotard <patrice.chot...@foss.st.com>
---
 cmd/clk.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/cmd/clk.c b/cmd/clk.c
index c7c379d7a6..4b9709d3ff 100644
--- a/cmd/clk.c
+++ b/cmd/clk.c
@@ -62,6 +62,7 @@ static void show_clks(struct udevice *dev, int depth, int 
last_flag)
 int __weak soc_clk_dump(void)
 {
        struct udevice *dev;
+       const struct clk_ops *ops;
 
        printf(" Rate               Usecnt      Name\n");
        printf("------------------------------------------\n");
@@ -69,6 +70,14 @@ int __weak soc_clk_dump(void)
        uclass_foreach_dev_probe(UCLASS_CLK, dev)
                show_clks(dev, -1, 0);
 
+       uclass_foreach_dev_probe(UCLASS_CLK, dev) {
+               ops = dev_get_driver_ops(dev);
+               if (ops && ops->dump) {
+                       printf("\n%s %s:\n", dev->driver->name, dev->name);
+                       ops->dump(dev);
+               }
+       }
+
        return 0;
 }
 #else
-- 
2.34.1

Reply via email to