Doing a usb_attach when dev is NULL will just result in the port detach op getting called even though nothing was connected in the first place.
Signed-off-by: Hans de Goede <hdego...@redhat.com> --- hw/usb-ehci.c | 7 +------ 1 files changed, 1 insertions(+), 6 deletions(-) diff --git a/hw/usb-ehci.c b/hw/usb-ehci.c index 0b1cdaf..cfda374 100644 --- a/hw/usb-ehci.c +++ b/hw/usb-ehci.c @@ -863,14 +863,9 @@ static void handle_port_status_write(EHCIState *s, int port, uint32_t val) if (!(val & PORTSC_PRESET) &&(*portsc & PORTSC_PRESET)) { trace_usb_ehci_port_reset(port, 0); - usb_attach(&s->ports[port], dev); - - // TODO how to handle reset of ports with no device if (dev) { + usb_attach(&s->ports[port], dev); usb_send_msg(dev, USB_MSG_RESET); - } - - if (s->ports[port].dev) { *portsc &= ~PORTSC_CSC; } -- 1.7.5.1