diff --git a/hw/qdev.c b/hw/qdev.c index 6f05232f74..9488dba33f 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 af2ee0f8b9..b342afbe3f 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 99c174c95e..909325423a 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, }, };