usb-ehci: cleanup port reset handling
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 <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
c44fd61c0f
commit
fbf9db6457
@ -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;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user