aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
authorAlan Stern <stern@rowland.harvard.edu>2008-02-20 12:10:04 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2008-02-21 18:38:54 -0500
commit274399d14f121d7676ecb75a461cfed6cf9e4cdb (patch)
treecb5451dca1f03f371f6613e537cf9a294ab4c3ad /drivers/usb
parent4e58407d5c31827de0225ea927420192a71daccd (diff)
USB: quirks and unusual_devs entry for Actions flash drive
This patch (as1033) adds a quirks entry and an unusual_devs entry for the Actions Semiconductor flash drive. This device has a 64-byte string descriptor, which it doesn't terminate with a 0-length packet. Oddly enough, the reporter's logs show that when the device was plugged in at boot time, it changes its behavior completely -- it uses a different product ID, product string descriptor, and bDeviceClass. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/core/quirks.c3
-rw-r--r--drivers/usb/storage/unusual_devs.h9
2 files changed, 12 insertions, 0 deletions
diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
index dc51790582d6..f90ab5e94c58 100644
--- a/drivers/usb/core/quirks.c
+++ b/drivers/usb/core/quirks.c
@@ -28,6 +28,9 @@
28 * devices is broken... 28 * devices is broken...
29 */ 29 */
30static const struct usb_device_id usb_quirk_list[] = { 30static const struct usb_device_id usb_quirk_list[] = {
31 /* Action Semiconductor flash disk */
32 { USB_DEVICE(0x10d6, 0x2200), .driver_info = USB_QUIRK_STRING_FETCH_255},
33
31 /* CBM - Flash disk */ 34 /* CBM - Flash disk */
32 { USB_DEVICE(0x0204, 0x6025), .driver_info = USB_QUIRK_RESET_RESUME }, 35 { USB_DEVICE(0x0204, 0x6025), .driver_info = USB_QUIRK_RESET_RESUME },
33 /* HP 5300/5370C scanner */ 36 /* HP 5300/5370C scanner */
diff --git a/drivers/usb/storage/unusual_devs.h b/drivers/usb/storage/unusual_devs.h
index 6494cc52a11d..99679a8cfa02 100644
--- a/drivers/usb/storage/unusual_devs.h
+++ b/drivers/usb/storage/unusual_devs.h
@@ -1500,6 +1500,15 @@ UNUSUAL_DEV( 0x1019, 0x0c55, 0x0000, 0x0110,
1500 US_SC_DEVICE, US_PR_DEVICE, usb_stor_ucr61s2b_init, 1500 US_SC_DEVICE, US_PR_DEVICE, usb_stor_ucr61s2b_init,
1501 0 ), 1501 0 ),
1502 1502
1503/* Reported by Fabio Venturi <f.venturi@tdnet.it>
1504 * The device reports a vendor-specific bDeviceClass.
1505 */
1506UNUSUAL_DEV( 0x10d6, 0x2200, 0x0100, 0x0100,
1507 "Actions Semiconductor",
1508 "Mtp device",
1509 US_SC_DEVICE, US_PR_DEVICE, NULL,
1510 0),
1511
1503/* Reported by Kevin Lloyd <linux@sierrawireless.com> 1512/* Reported by Kevin Lloyd <linux@sierrawireless.com>
1504 * Entry is needed for the initializer function override, 1513 * Entry is needed for the initializer function override,
1505 * which instructs the device to load as a modem 1514 * which instructs the device to load as a modem