[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-arm] [PATCH v6 4/9] qdev-monitor: print the device's clock with in
From: |
damien . hedde |
Subject: |
[Qemu-arm] [PATCH v6 4/9] qdev-monitor: print the device's clock with info qtree |
Date: |
Wed, 4 Sep 2019 11:38:38 +0200 |
From: Damien Hedde <address@hidden>
This prints the clocks attached to a DeviceState when using "info qtree" monitor
command. For every clock, it displays the direction, the name and if the
clock is forwarded. For input clock, it displays also the frequency.
This is based on the original work of Frederic Konrad.
Signed-off-by: Damien Hedde <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Tested-by: Philippe Mathieu-Daudé <address@hidden>
---
qdev-monitor.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/qdev-monitor.c b/qdev-monitor.c
index a0003bf2a9..d5b8be956b 100644
--- a/qdev-monitor.c
+++ b/qdev-monitor.c
@@ -19,6 +19,7 @@
#include "qemu/osdep.h"
#include "hw/sysbus.h"
+#include "hw/clock.h"
#include "monitor/monitor.h"
#include "monitor/qdev.h"
#include "sysemu/arch_init.h"
@@ -689,6 +690,7 @@ static void qdev_print(Monitor *mon, DeviceState *dev, int
indent)
ObjectClass *class;
BusState *child;
NamedGPIOList *ngl;
+ NamedClockList *clk;
qdev_printf("dev: %s, id \"%s\"\n", object_get_typename(OBJECT(dev)),
dev->id ? dev->id : "");
@@ -703,6 +705,17 @@ static void qdev_print(Monitor *mon, DeviceState *dev, int
indent)
ngl->num_out);
}
}
+ QLIST_FOREACH(clk, &dev->clocks, node) {
+ if (clk->out) {
+ qdev_printf("clock-out%s \"%s\"\n",
+ clk->forward ? " (fw)" : "",
+ clk->name);
+ } else {
+ qdev_printf("clock-in%s \"%s\" freq_hz=%" PRIu64"\n",
+ clk->forward ? " (fw)" : "",
+ clk->name, clock_get_frequency(clk->in));
+ }
+ }
class = object_get_class(OBJECT(dev));
do {
qdev_print_props(mon, dev, DEVICE_CLASS(class)->props, indent);
--
2.22.0
- [Qemu-arm] [PATCH v6 0/9] Clock framework API, damien . hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 5/9] qdev-clock: introduce an init array to ease the device construction, damien . hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 8/9] hw/char/cadence_uart: add clock support, damien . hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 1/9] hw/core/clock: introduce clock objects, damien . hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 7/9] hw/misc/zynq_slcr: add clock generation for uarts, damien . hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 2/9] hw/core/clock-vmstate: define a vmstate entry for clock state, damien . hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 4/9] qdev-monitor: print the device's clock with info qtree,
damien . hedde <=
- [Qemu-arm] [PATCH v6 6/9] docs/clocks: add device's clock documentation, damien . hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 9/9] hw/arm/xilinx_zynq: connect uart clocks to slcr, damien . hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 3/9] qdev: add clock input&output support to devices., damien . hedde, 2019/09/04
- Re: [Qemu-arm] [Qemu-devel] [PATCH v6 0/9] Clock framework API, Damien Hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 0/9] Clock framework API, Damien Hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 2/9] hw/core/clock-vmstate: define a vmstate entry for clock state, Damien Hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 1/9] hw/core/clock: introduce clock objects, Damien Hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 4/9] qdev-monitor: print the device's clock with info qtree, Damien Hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 5/9] qdev-clock: introduce an init array to ease the device construction, Damien Hedde, 2019/09/04
- [Qemu-arm] [PATCH v6 3/9] qdev: add clock input&output support to devices., Damien Hedde, 2019/09/04