From 03c3481e051ea8821516a48315c931e042e9dc7f Mon Sep 17 00:00:00 2001 From: Alan Stern Date: Wed, 13 Feb 2008 10:45:28 -0500 Subject: [PATCH] --- yaml --- r: 86067 b: refs/heads/master c: a462549b6ad6d4de19a7702c13fbb954d9a10f29 h: refs/heads/master i: 86065: 52b813788abd1149594286879c04ed4d5007c9e1 86063: 73e64f3d5f5be44f4e1b5c2e04f8b7942cccfad3 v: v3 --- [refs] | 2 +- trunk/drivers/usb/storage/transport.c | 11 ----------- trunk/drivers/usb/storage/unusual_devs.h | 12 ++++++++++++ 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/[refs] b/[refs] index 3f35c3ff1ffe..8a327f096fff 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: aa59e053da08336e7def83e83c86369cd9fdaf8b +refs/heads/master: a462549b6ad6d4de19a7702c13fbb954d9a10f29 diff --git a/trunk/drivers/usb/storage/transport.c b/trunk/drivers/usb/storage/transport.c index d9f4912f873d..5780ed15f1ad 100644 --- a/trunk/drivers/usb/storage/transport.c +++ b/trunk/drivers/usb/storage/transport.c @@ -891,17 +891,6 @@ int usb_stor_Bulk_max_lun(struct us_data *us) if (result > 0) return us->iobuf[0]; - /* - * Some devices (i.e. Iomega Zip100) need this -- apparently - * the bulk pipes get STALLed when the GetMaxLUN request is - * processed. This is, in theory, harmless to all other devices - * (regardless of if they stall or not). - */ - if (result == -EPIPE) { - usb_stor_clear_halt(us, us->recv_bulk_pipe); - usb_stor_clear_halt(us, us->send_bulk_pipe); - } - /* * Some devices don't like GetMaxLUN. They may STALL the control * pipe, they may return a zero-length result, they may do nothing at diff --git a/trunk/drivers/usb/storage/unusual_devs.h b/trunk/drivers/usb/storage/unusual_devs.h index fe12737e0e2b..a97e7ef252f0 100644 --- a/trunk/drivers/usb/storage/unusual_devs.h +++ b/trunk/drivers/usb/storage/unusual_devs.h @@ -759,6 +759,18 @@ UNUSUAL_DEV( 0x0595, 0x4343, 0x0000, 0x2210, "Digital Camera EX-20 DSC", US_SC_8070, US_PR_DEVICE, NULL, 0 ), +/* Reported by Andre Welter + * This antique device predates the release of the Bulk-only Transport + * spec, and if it gets a Get-Max-LUN then it requires the host to do a + * Clear-Halt on the bulk endpoints. The SINGLE_LUN flag will prevent + * us from sending the request. + */ +UNUSUAL_DEV( 0x059b, 0x0001, 0x0100, 0x0100, + "Iomega", + "ZIP 100", + US_SC_DEVICE, US_PR_DEVICE, NULL, + US_FL_SINGLE_LUN ), + /* Reported by */ UNUSUAL_DEV( 0x059f, 0x0643, 0x0000, 0x0000, "LaCie",