From patchwork Sat Dec 26 21:11:36 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [RFC,08/11] qdev: Add usb_bus_dev_info Date: Sat, 26 Dec 2009 11:11:36 -0000 From: Nathan Baum X-Patchwork-Id: 41822 Message-Id: <1261861899-1984-9-git-send-email-nathan@parenthephobia.org.uk> To: qemu-devel@nongnu.org Returns a QObject with information about a USB device. Signed-off-by: Nathan Baum --- hw/usb-bus.c | 13 +++++++++++++ 1 files changed, 13 insertions(+), 0 deletions(-) diff --git a/hw/usb-bus.c b/hw/usb-bus.c index 54027df..6d02807 100644 --- a/hw/usb-bus.c +++ b/hw/usb-bus.c @@ -3,6 +3,7 @@ #include "qdev.h" #include "sysemu.h" #include "monitor.h" +#include "qjson.h" static void usb_bus_dev_print(Monitor *mon, DeviceState *qdev, int indent); @@ -232,6 +233,18 @@ static void usb_bus_dev_print(Monitor *mon, DeviceState *qdev, int indent) dev->attached ? ", attached" : ""); } +static QObject *usb_bus_dev_info(Monitor *mon, DeviceState *qdev) +{ + USBDevice *dev = DO_UPCAST(USBDevice, qdev, qdev); + USBBus *bus = usb_bus_from_device(dev); + return qobject_from_jsonf("{'busnr': %d, 'addr':%d, 'speed': %s, 'desc': %s, 'attached': %i}", + bus->busnr, + dev->addr, + usb_speed(dev->speed), + dev->product_desc, + dev->attached); +} + void usb_info(Monitor *mon) { USBBus *bus;