From: Gerd Hoffmann Date: Tue, 3 Jul 2012 08:15:08 +0000 (+0200) Subject: usb: fix interface initialization X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=7c37e6a4c4972ad3cdb2478a0249757ee3a1bf70;p=qemu.git usb: fix interface initialization zero is a valid interface number, so don't use it when resetting the endpoints. Signed-off-by: Gerd Hoffmann --- diff --git a/hw/usb.h b/hw/usb.h index 9cd2f89666..7ed8fb8fcf 100644 --- a/hw/usb.h +++ b/hw/usb.h @@ -145,6 +145,8 @@ #define USB_ENDPOINT_XFER_INT 3 #define USB_ENDPOINT_XFER_INVALID 255 +#define USB_INTERFACE_INVALID 255 + typedef struct USBBus USBBus; typedef struct USBBusOps USBBusOps; typedef struct USBPort USBPort; diff --git a/hw/usb/core.c b/hw/usb/core.c index fe15be064f..0614f76f4f 100644 --- a/hw/usb/core.c +++ b/hw/usb/core.c @@ -566,8 +566,8 @@ void usb_ep_reset(USBDevice *dev) dev->ep_out[ep].pid = USB_TOKEN_OUT; dev->ep_in[ep].type = USB_ENDPOINT_XFER_INVALID; dev->ep_out[ep].type = USB_ENDPOINT_XFER_INVALID; - dev->ep_in[ep].ifnum = 0; - dev->ep_out[ep].ifnum = 0; + dev->ep_in[ep].ifnum = USB_INTERFACE_INVALID; + dev->ep_out[ep].ifnum = USB_INTERFACE_INVALID; dev->ep_in[ep].dev = dev; dev->ep_out[ep].dev = dev; dev->ep_in[ep].pipeline = false;