qdev/core: add monitor command to list all drivers
authorGerd Hoffmann <kraxel@redhat.com>
Wed, 29 Jul 2009 11:12:24 +0000 (13:12 +0200)
committerAnthony Liguori <aliguori@us.ibm.com>
Thu, 30 Jul 2009 14:50:37 +0000 (09:50 -0500)
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

hw/qdev.c
hw/qdev.h
monitor.c

index 6f05232..9488dba 100644 (file)
--- 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);
+    }
+}
index af2ee0f..b342afb 100644 (file)
--- 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 ***/
 
index 99c174c..9093254 100644 (file)
--- 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, },
 };