From: Gleb Natapov Date: Wed, 17 Jun 2009 16:32:02 +0000 (+0300) Subject: Register usb-uhci reset function. X-Git-Tag: v0.11.0-rc0~333 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c8075ac370e08190271ed7b6b1b81e45160d4c2b;p=thirdparty%2Fqemu.git Register usb-uhci reset function. The device is not reset on system reset currently. Without this patch RHEL4.8 hangs after reboot if -usbdevice table is in use. Signed-off-by: Gleb Natapov --- diff --git a/hw/usb-uhci.c b/hw/usb-uhci.c index 00e740b47d9..ea83bdc3ee4 100644 --- a/hw/usb-uhci.c +++ b/hw/usb-uhci.c @@ -319,8 +319,9 @@ static void uhci_update_irq(UHCIState *s) qemu_set_irq(s->dev.irq[3], level); } -static void uhci_reset(UHCIState *s) +static void uhci_reset(void *opaque) { + UHCIState *s = opaque; uint8_t *pci_conf; int i; UHCIPort *port; @@ -1093,6 +1094,7 @@ void usb_uhci_piix3_init(PCIBus *bus, int devfn) } s->frame_timer = qemu_new_timer(vm_clock, uhci_frame_timer, s); + qemu_register_reset(uhci_reset, 0, s); uhci_reset(s); /* Use region 4 for consistency with real hardware. BSD guests seem @@ -1127,6 +1129,7 @@ void usb_uhci_piix4_init(PCIBus *bus, int devfn) } s->frame_timer = qemu_new_timer(vm_clock, uhci_frame_timer, s); + qemu_register_reset(uhci_reset, 0, s); uhci_reset(s); /* Use region 4 for consistency with real hardware. BSD guests seem