[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 16/20] qdev/usb: print usb dev info
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [PATCH 16/20] qdev/usb: print usb dev info |
Date: |
Mon, 29 Jun 2009 14:46:17 +0200 |
Signed-off-by: Gerd Hoffmann <address@hidden>
---
hw/usb-bus.c | 26 ++++++++++++++++++++++++++
hw/usb.h | 1 +
vl.c | 17 +----------------
3 files changed, 28 insertions(+), 16 deletions(-)
diff --git a/hw/usb-bus.c b/hw/usb-bus.c
index 689df9f..9f07946 100644
--- a/hw/usb-bus.c
+++ b/hw/usb-bus.c
@@ -1,10 +1,14 @@
#include "hw.h"
#include "usb.h"
#include "qdev.h"
+#include "monitor.h"
+
+static void usb_bus_dev_print(Monitor *mon, DeviceState *qdev, int indent);
static struct BusInfo usb_bus_info = {
.name = "USB",
.size = sizeof(USBBus),
+ .print = usb_bus_dev_print,
};
USBBus *usb_bus_new(DeviceState *host)
@@ -137,3 +141,25 @@ int usb_device_delete_addr(int busnr, int addr)
bus->nfree++;
return 0;
}
+
+const char *usb_speed(unsigned int speed)
+{
+ static const char *txt[] = {
+ [ USB_SPEED_LOW ] = "1.5",
+ [ USB_SPEED_FULL ] = "12",
+ [ USB_SPEED_HIGH ] = "480",
+ };
+ if (speed >= ARRAY_SIZE(txt))
+ return "?";
+ return txt[speed];
+}
+
+static void usb_bus_dev_print(Monitor *mon, DeviceState *qdev, int indent)
+{
+ USBDevice *dev = DO_UPCAST(USBDevice, qdev, qdev);
+ USBBus *bus = usb_bus_from_device(dev);
+
+ monitor_printf(mon, "%*saddr %d.%d, speed %s, name %s\n", indent, "",
+ bus->qbus.busnr, dev->addr,
+ usb_speed(dev->speed), dev->devname);
+}
diff --git a/hw/usb.h b/hw/usb.h
index d68988a..3169bc9 100644
--- a/hw/usb.h
+++ b/hw/usb.h
@@ -309,6 +309,7 @@ void usb_register_port(USBBus *bus, USBPort *port, void
*opaque, int index,
usb_attachfn attach);
int usb_device_attach(USBDevice *dev);
int usb_device_delete_addr(int busnr, int addr);
+const char *usb_speed(unsigned int speed);
static inline USBBus *usb_bus_from_device(USBDevice *d)
{
diff --git a/vl.c b/vl.c
index 7add3d7..0462892 100644
--- a/vl.c
+++ b/vl.c
@@ -2746,7 +2746,6 @@ void usb_info(Monitor *mon)
USBBus *bus;
USBDevice *dev;
USBPort *port;
- const char *speed_str;
int busnr;
if (!usb_enabled) {
@@ -2762,22 +2761,8 @@ void usb_info(Monitor *mon)
dev = port->dev;
if (!dev)
continue;
- switch(dev->speed) {
- case USB_SPEED_LOW:
- speed_str = "1.5";
- break;
- case USB_SPEED_FULL:
- speed_str = "12";
- break;
- case USB_SPEED_HIGH:
- speed_str = "480";
- break;
- default:
- speed_str = "?";
- break;
- }
monitor_printf(mon, " Device %d.%d, Speed %s Mb/s, Product %s\n",
- busnr, dev->addr, speed_str, dev->devname);
+ busnr, dev->addr, usb_speed(dev->speed),
dev->devname);
}
}
}
--
1.6.2.5
- [Qemu-devel] [PATCH 04/20] qdev/core: bus list, (continued)
- [Qemu-devel] [PATCH 04/20] qdev/core: bus list, Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 01/20] qdev: update pci device registration., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 06/20] qdev/pci: misc fixes., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 02/20] qdev: replace bus_type enum with bus_info struct., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 09/20] qdev: convert piix acpi., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 08/20] qdev: convert piix-ide., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 07/20] qdev/pci: hook up i440fx., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 11/20] qdev: convert es1370., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 12/20] qdev: convert ac97., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 17/20] qdev: convert ohci., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 16/20] qdev/usb: print usb dev info,
Gerd Hoffmann <=
- [Qemu-devel] [PATCH 10/20] qdev: convert all vga, Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 13/20] qdev: convert uhci., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 15/20] qdev/usb: make qemu aware of usb busses., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 14/20] qdev/usb: add usb bus support to qdev, convert drivers., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 19/20] debug/test patch: add ohci controller to pc, Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 18/20] qdev/scsi: add scsi bus support to qdev, convert drivers., Gerd Hoffmann, 2009/06/29
- [Qemu-devel] [PATCH 20/20] debug/test patch: allow specify busnr for -usbdevice, Gerd Hoffmann, 2009/06/29
- Re: [Qemu-devel] [PATCH 0/20] qdev patches., Anthony Liguori, 2009/06/29