aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2009-07-29 13:12:24 +0200
committerAnthony Liguori <aliguori@us.ibm.com>2009-07-30 09:50:37 -0500
commit9316d30fbb429fdb34c60a8ffc164db8b95edf31 (patch)
tree8cdbcad6589bc878457b8a98800262b0f6ea8ec1
parent1b524b044160ca1c508c4f3ac9ae5b93600851fd (diff)
downloadqemu-9316d30fbb429fdb34c60a8ffc164db8b95edf31.zip
qemu-9316d30fbb429fdb34c60a8ffc164db8b95edf31.tar.gz
qemu-9316d30fbb429fdb34c60a8ffc164db8b95edf31.tar.bz2
qdev/core: add monitor command to list all drivers
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
-rw-r--r--hw/qdev.c11
-rw-r--r--hw/qdev.h1
-rw-r--r--monitor.c2
3 files changed, 14 insertions, 0 deletions
diff --git a/hw/qdev.c b/hw/qdev.c
index 6f05232..9488dba 100644
--- a/hw/qdev.c
+++ b/hw/qdev.c
@@ -590,3 +590,14 @@ void do_info_qtree(Monitor *mon)
if (main_system_bus)
qbus_print(mon, main_system_bus, 0);
}
+
+void do_info_qdrv(Monitor *mon)
+{
+ DeviceInfo *info;
+ char msg[256];
+
+ for (info = device_info_list; info != NULL; info = info->next) {
+ qdev_print_devinfo(info, msg, sizeof(msg));
+ monitor_printf(mon, "%s\n", msg);
+ }
+}
diff --git a/hw/qdev.h b/hw/qdev.h
index af2ee0f..b342afb 100644
--- a/hw/qdev.h
+++ b/hw/qdev.h
@@ -143,6 +143,7 @@ BusState *qbus_create(BusInfo *info, DeviceState *parent, const char *name);
/*** monitor commands ***/
void do_info_qtree(Monitor *mon);
+void do_info_qdrv(Monitor *mon);
/*** qdev-properties.c ***/
diff --git a/monitor.c b/monitor.c
index 99c174c..9093254 100644
--- a/monitor.c
+++ b/monitor.c
@@ -1882,6 +1882,8 @@ static const mon_cmd_t info_cmds[] = {
"", "show balloon information" },
{ "qtree", "", do_info_qtree,
"", "show device tree" },
+ { "qdrv", "", do_info_qdrv,
+ "", "show qdev driver list" },
{ NULL, NULL, },
};