diff --git a/sys/dev/usb/usb_quirks.c b/sys/dev/usb/usb_quirks.c index 590c517cf62e..a994c8a12700 100644 --- a/sys/dev/usb/usb_quirks.c +++ b/sys/dev/usb/usb_quirks.c @@ -79,9 +79,6 @@ Static const struct usbd_quirk_entry { { USB_VENDOR_TELEX, USB_PRODUCT_TELEX_MIC1, 0x009, { UQ_AU_NO_FRAC }}, { USB_VENDOR_SILICONPORTALS, USB_PRODUCT_SILICONPORTALS_YAPPHONE, 0x100, { UQ_AU_INP_ASYNC }}, - { USB_VENDOR_APPLE, USB_PRODUCT_APPLE_IPOD3G, ANY, { UQ_NO_OPEN_CLEARSTALL }}, - { USB_VENDOR_APPLE, USB_PRODUCT_APPLE_IPODNANO, ANY, { UQ_NO_OPEN_CLEARSTALL }}, - { USB_VENDOR_APPLE, USB_PRODUCT_APPLE_IPODVIDEO, ANY, { UQ_NO_OPEN_CLEARSTALL }}, /* XXX These should have a revision number, but I don't know what they are. */ { USB_VENDOR_HP, USB_PRODUCT_HP_895C, ANY, { UQ_BROKEN_BIDIR }}, { USB_VENDOR_HP, USB_PRODUCT_HP_880C, ANY, { UQ_BROKEN_BIDIR }}, diff --git a/sys/dev/usb/usb_quirks.h b/sys/dev/usb/usb_quirks.h index 9a2c730b0f30..85fe8cc7f73b 100644 --- a/sys/dev/usb/usb_quirks.h +++ b/sys/dev/usb/usb_quirks.h @@ -54,8 +54,6 @@ struct usbd_quirks { #define UQ_AU_INP_ASYNC 0x0800 /* input is async despite claim of adaptive */ #define UQ_ASSUME_CM_OVER_DATA 0x1000 /* modem device breaks on cm over data */ #define UQ_BROKEN_BIDIR 0x2000 /* printer has broken bidir mode */ -#define UQ_NO_OPEN_CLEARSTALL 0x4000 /* don't usbd_clear_endpoint_stall() */ - /* in usbd_setup_pipe() */ #define UQ_HID_IGNORE 0x8000 /* device should be ignored by hid class */ }; diff --git a/sys/dev/usb/usb_subr.c b/sys/dev/usb/usb_subr.c index ca573b622293..655a4e3f124d 100644 --- a/sys/dev/usb/usb_subr.c +++ b/sys/dev/usb/usb_subr.c @@ -779,23 +779,6 @@ usbd_setup_pipe(usbd_device_handle dev, usbd_interface_handle iface, return (err); } - if (!(dev->quirks->uq_flags & UQ_NO_OPEN_CLEARSTALL)) { - /* Clear any stall and make sure DATA0 toggle will be used next. */ - if (UE_GET_ADDR(ep->edesc->bEndpointAddress) != USB_CONTROL_ENDPOINT) { - err = usbd_clear_endpoint_stall(p); - /* - * Some devices reject this command, so ignore a STALL. - * Some device just time out on this command, so ignore - * that too. - */ - if (err && err != USBD_STALLED && err != USBD_TIMEOUT) { - printf("usbd_setup_pipe: failed to start " - "endpoint, %s\n", usbd_errstr(err)); - return (err); - } - } - } - *pipe = p; return (USBD_NORMAL_COMPLETION); }