1. 21 1月, 2010 1 次提交
    • R
      USB: fix usbstorage for 2770:915d delivers no FAT · 10d2cdb6
      Ryan May 提交于
      Resolves kernel.org bug 14914.
      
      Remove entry for 2770:915d (usb digital camera with mass storage
      support) from unusual_devs.h. The fix triggered by the entry causes
      the file system on the camera to be completely inaccessible (no
      partition table, the device is not mountable).
      
      The patch works, but let me clarify a few things about it.  All the
      patch does is remove the entry for this device from the
      drivers/usb/storage/unusual_devs.h, which is supposed to help with a
      problem with the device's reported size (I think).  I'm pretty sure it
      was originally added for a reason, so I'm not sure removing it won't
      cause other problems to reappear.  Also, I should note that this
      unusual_devs.h entry was present (and activating workarounds) in
      2.6.29, but in that version everything works fine.  Starting with
      2.6.30, things no longer work.
      Signed-off-by: NRyan May <rmay31@gmail.com>
      Cc: Rohan Hart <rohan.hart17@gmail.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      
      10d2cdb6
  2. 12 12月, 2009 1 次提交
    • A
      USB: usb-storage: add BAD_SENSE flag · a0bb1081
      Alan Stern 提交于
      This patch (as1311) fixes a problem in usb-storage: Some devices are
      pretty broken when it comes to reporting sense data.  The information
      they send back indicates that they have more than 18 bytes of sense
      data available, but when the system asks for more than 18 they fail or
      hang.  The symptom is that probing fails with multiple resets.
      
      The patch adds a new BAD_SENSE flag to indicate that usb-storage
      should never ask for more than 18 bytes of sense data.  The flag can
      be set in an unusual_devs entry or via the "quirks=" module parameter,
      and it is set automatically whenever a REQUEST SENSE command for more
      than 18 bytes fails or times out.
      
      An unusual_devs entry is added for the Agfa photo frame, which uses a
      Prolific chip having this bug.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Tested-by: NDaniel Kukula <daniel.kuku@gmail.com>
      Cc: stable <stable@kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      a0bb1081
  3. 10 10月, 2009 1 次提交
  4. 23 9月, 2009 1 次提交
  5. 08 8月, 2009 1 次提交
  6. 16 6月, 2009 1 次提交
  7. 09 5月, 2009 1 次提交
  8. 24 4月, 2009 1 次提交
  9. 18 4月, 2009 2 次提交
  10. 25 3月, 2009 11 次提交
  11. 18 3月, 2009 3 次提交
    • T
      USB: storage: Unusual USB device Prolific 2507 variation added · 8a0845c5
      Thomas Bartosik 提交于
      The "c-enter" USB to Toshiba 1.8" IDE enclosure needs special treatment
      to work flawlessly. This patch is absolutely trivial, as the integrated
      USB-IDE bridge is already identified to be an "unusual" device, only the
      bcdDevice is different (lower) to the bcdDeviceMin already included in
      the kernel.
      It is a Prolific 2507 bridge.
      
      T:  Bus=02 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#=  4 Spd=480 MxCh= 0
      D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
      P:  Vendor=067b ProdID=2507 Rev= 0.01
      S:  Manufacturer=Prolific Technology Inc.
      S:  Product=ATAPI-6 Bridge Controller
      S:  SerialNumber=00000272
      C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=100mA
      I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
      E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      Signed-off-by: NThomas Bartosik <tbartdev@gmx-topmail.de>
      Cc: stable <stable@kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      8a0845c5
    • M
      USB: Updated unusual-devs entry for USB mass storage on Nokia 6233 · 716a9c85
      Moritz Muehlenhoff 提交于
      Current firmware revision 5.60 still behaves the same,
      so update the quirk up a (non-existing) 99.99 revision.
      
      http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=493415Signed-off-by: NMoritz Muehlenhoff <jmm@debian.org>
      Tested-by: NJan Heitkoetter <devnull@heitkoetter.net>
      Cc: stable <stable@kernel.org>
      Signed-off-by: NPhil Dibowitz <phil@ipom.com>
      716a9c85
    • J
      USB: unusual_devs: Add support for GI 0431 SD-Card interface · c497e715
      Jan Dumon 提交于
      Enable the SD-Card interface on the GI 0431 HSUPA stick from Option.
      
      The unusual_devs.h entry is necessary because the device descriptor is
      vendor-specific. That prevents usb-storage from binding to it as an
      interface driver.
      
      T:  Bus=07 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#= 15 Spd=480 MxCh= 0
      D:  Ver= 2.00 Cls=ff(vend.) Sub=ff Prot=ff MxPS=64 #Cfgs=  1
      P:  Vendor=0af0 ProdID=7501 Rev= 0.00
      S:  Manufacturer=Option N.V.
      S:  Product=Globetrotter HSUPA Modem
      C:* #Ifs=11 Cfg#= 1 Atr=a0 MxPwr=500mA
      I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=hso
      E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
      I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
      E:  Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
      I:* If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
      E:  Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
      I:* If#= 3 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=hso
      E:  Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
      I:* If#= 4 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
      E:  Ad=85(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=05(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
      I:* If#= 5 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
      E:  Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=06(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
      I:* If#= 6 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=hso
      E:  Ad=87(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=07(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
      I:* If#= 7 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=hso
      E:  Ad=88(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=08(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
      I:* If#= 8 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
      E:  Ad=89(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=09(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
      I:* If#= 9 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=hso
      E:  Ad=8a(I) Atr=03(Int.) MxPS=  64 Ivl=2ms
      E:  Ad=8b(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=0a(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
      I:* If#=10 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
      E:  Ad=0b(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=8c(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      Signed-off-by: NJan Dumon <j.dumon@option.com>
      Signed-off-by: NPhil Dibowitz <phil@ipom.com>
      Cc: stable <stable@kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      c497e715
  12. 28 2月, 2009 1 次提交
  13. 10 2月, 2009 2 次提交
  14. 28 1月, 2009 5 次提交
  15. 08 1月, 2009 8 次提交
    • A
      USB: storage: set CAPACITY_HEURISTICS flag for bad vendors · a81a81a2
      Alan Stern 提交于
      This patch (as1194) makes usb-storage set the CAPACITY_HEURISTICS flag
      for all devices made by Nokia, Nikon, or Motorola.  These companies
      seem to include the READ CAPACITY bug in all of their devices.
      
      Since cell phones and digital cameras rely on flash storage, which
      always has an even number of sectors, setting CAPACITY_HEURISTICS
      shouldn't cause any problems.  Not even if the companies wise up and
      start making devices without the bug.
      
      A large number of unusual_devs entries are now unnecessary, so the
      patch removes them.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Cc: stable <stable@kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      a81a81a2
    • A
      USB: storage: add last-sector hacks · 25ff1c31
      Alan Stern 提交于
      This patch (as1189b) adds some hacks to usb-storage for dealing with
      the growing problems involving bad capacity values and last-sector
      accesses:
      
      	A new flag, US_FL_CAPACITY_OK, is created to indicate that
      	the device is known to report its capacity correctly.  An
      	unusual_devs entry for Linux's own File-backed Storage Gadget
      	is added with this flag set, since g_file_storage always
      	reports the correct capacity and since the capacity need
      	not be even (it is determined by the size of the backing
      	file).
      
      	An entry in unusual_devs.h which has only the CAPACITY_OK
      	flag set shouldn't prejudice libusual, since the device will
      	work perfectly well with either usb-storage or ub.  So a
      	new macro, COMPLIANT_DEV, is added to let libusual know
      	about these entries.
      
      	When a last-sector access succeeds and the total number of
      	sectors is odd (the unexpected case, in which guessing that
      	the number is even might cause trouble), a WARN is triggered.
      	The kerneloops.org project will collect these warnings,
      	allowing us to add CAPACITY_OK flags for the devices in
      	question before implementing the default-to-even heuristic.
      	If users want to prevent the stack dump produced by the WARN,
      	they can disable the hack by adding an unusual_devs entry
      	for their device with the CAPACITY_OK flag.
      
      	When a last-sector access fails three times in a row and
      	neither the FIX_CAPACITY nor the CAPACITY_OK flag is set,
      	we assume the last-sector bug is present.  We replace the
      	existing status and sense data with values that will cause
      	the SCSI core to fail the access immediately rather than
      	retry indefinitely.  This should fix the difficulties
      	people have been having with Nokia phones.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Cc: stable <stable@kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      25ff1c31
    • D
      USB: unusual dev for Option N.V. ZeroCD modems · 281b064f
      Dan Williams 提交于
      Many newer Option mobile broadband devices initially provide a
      usb-storage "driver CD" device that's pretty useless on Linux since
      any software on it most likely wouldn't be compatible with your
      kernel or distro anyway.  Thus, by default just kill the driver
      CD device by sending the SCSI 'rezero' command, but allow override
      of the default behavior via usb-storage module parameter so users
      can keep the ZeroCD device if they really want to.  Inspired by
      the Sierra TruInstall patch.
      Signed-off-by: NDan Williams <dcbw@redhat.com>
      Acked-by: NMarcel Holtmann <marcel@holtmann.org>
      Cc: Peter Henn <p.henn@option.com
      Cc: Denis Joseph Barrow <D.Barow@option.com>
      Cc: Alan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      281b064f
    • A
      USB: usb-storage: merge DPCM support into SDDR09 · c20b15fd
      Alan Stern 提交于
      The DPCM subdriver is a little peculiar, in that it's meant to support
      devices where LUN 0 is Compact Flash and uses the CB transport whereas
      LUN 1 is SmartMedia and uses the SDDR09 transport.  Thus DPCM isn't
      really a transport in itself; it's more like a demultiplexer.
      
      Much of the DPCM code is part of the SDDR09 subdriver already, and the
      remaining part is fairly small.  This patch (as1182) moves that extra
      piece into sddr09.c, thereby eliminating dpcm.c.  Also eliminated is
      the Kconfig entry for DPCM support; it is now listed as part of the
      SDDR09 entry.
      
      In order to make sure that the semantics are the same as before, each
      unusual_devs entry for DPCM is now present twice: once with DPCM
      support if SDDR09 is configured (as before), and once with the
      SINGLE_LUN flag and CB support otherwise.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      CC: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      c20b15fd
    • B
      USB: storage: Flag devices known to support SANE_SENSE · dbe6e0c0
      Ben Efros 提交于
      Add a few devices known to have support for larger sense buffers.
      Supporting SANE_SENSE does not necessarily mean SAT-1 or SAT-2 is fully
      supported.
      
      Depends on SANE_SENSE patch [1].  Incorporates the Maxtor and Western
      Digital devices originally submitted by Matthieu CASTET [2]. 
      
      [1] https://lists.one-eyed-alien.net/pipermail/usb-storage/2008-November/004181.html
      [2] http://marc.info/?l=linux-usb&m=121762869915609&w=2Signed-off-by: NBen Efros <ben@pc-doctor.com>
      Signed-off-by: NMatthew Dharm <mdharm-usb@one-eyed-alien.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      dbe6e0c0
    • A
      usb-storage: clean up unusual_devs.h · f9dc8f99
      Alan Stern 提交于
      This patch (as1170) removes some duplicate entries in unusual_devs.h
      and rearranges a few others to put the list in proper numerical order.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      f9dc8f99
    • S
      USB: storage: unusual_devs.h additions for Macpower MasterBox · 3b438e30
      Sergey Ovcharenko 提交于
      Jason Johnston reported these problems with his external USB hard drive:
      http://bugs.gentoo.org/show_bug.cgi?id=250789
      
      The number of reported sectors is off-by-one.
      
      /proc/bus/usb/devices:
      T:  Bus=01 Lev=02 Prnt=08 Port=00 Cnt=01 Dev#=  9 Spd=480 MxCh= 0
      D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
      P:  Vendor=0dc4 ProdID=0073 Rev= 0.00
      S:  Manufacturer=Macpower Technology Co.LTD.
      S:  Product=USB 2.0 3.5" DEVICE
      S:  SerialNumber=03006C
      C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=100mA
      I:* If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
      E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      E:  Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      Signed-off-by: NSergey Ovcharenko <velegrin@mail.mipt.ru>
      Signed-off-by: NPhil Dibowitz <phil@ipom.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      3b438e30
    • P
      USB: storage: recognizing and enabling Nokia 5200 cell phoes · b8d23491
      Paulo Afonso Graner Fessel 提交于
      This patch corrects the issue when one connects a Nokia 5200 cell
      phone in data storage mode. If one uses an unpatched unusual_devs.h,
      the following messages appear on /var/log/messages:
      
      Dec 12 01:03:24 alberich kernel: usb 4-2: new full speed USB device
      using uhci_hcd and address 3
      Dec 12 01:03:25 alberich kernel: usb 4-2: configuration #1 chosen from 1 choice
      Dec 12 01:03:25 alberich kernel: scsi10 : SCSI emulation for USB Mass
      Storage devices
      Dec 12 01:03:25 alberich kernel: usb 4-2: New USB device found,
      idVendor=0421, idProduct=04bd
      Dec 12 01:03:25 alberich kernel: usb 4-2: New USB device strings:
      Mfr=1, Product=2, SerialNumber=3
      Dec 12 01:03:25 alberich kernel: usb 4-2: Product: Nokia 5200
      Dec 12 01:03:25 alberich kernel: usb 4-2: Manufacturer: Nokia
      Dec 12 01:03:25 alberich kernel: usb 4-2: SerialNumber: 353930018354523
      Dec 12 01:03:25 alberich kernel: usbcore: registered new interface driver ub
      Dec 12 01:03:30 alberich kernel: scsi 10:0:0:0: Direct-Access
      Nokia    Nokia 5200       0000 PQ: 0 AN
      SI: 4
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: [sdg] 3985409 512-byte
      hardware sectors (2041 MB)
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: [sdg] Write Protect is off
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: [sdg] Assuming drive
      cache: write through
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: [sdg] 3985409 512-byte
      hardware sectors (2041 MB)
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: [sdg] Write Protect is off
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: [sdg] Assuming drive
      cache: write through
      Dec 12 01:03:30 alberich kernel:  sdg: sdg1
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: [sdg] Attached SCSI removable disk
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: Attached scsi generic sg9 type 0
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: [sdg] Sense Key : No
      Sense [current]
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: [sdg] Add. Sense: No
      additional sense information
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: [sdg] Sense Key : No
      Sense [current]
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: [sdg] Add. Sense: No
      additional sense information
      Dec 12 01:03:30 alberich kernel: sd 10:0:0:0: [sdg] Sense Key : No
      Sense [current]
      
      (...)
      
      The MicroSD card in the phone remains inaccessible and finally the
      cell phone turns itself off. The patch solves this problem and makes
      the cell phone fully accessible:
      
      [root@alberich kernel-linus-2.6.27.5-1mdv]# df -h
      Sist. Arq.            Tam   Usad Disp  Uso% Montado em
      /dev/sda6              31G  5,2G   26G  17% /
      /dev/sda1              92M   27M   61M  31% /boot
      /dev/mapper/homevg-homelv  240G  237G  3,5G  99% /home
      /dev/sda3              21G  7,9G   13G  40% /mnt/windows
      /dev/sdg1             2,0G  287M  1,7G  15% /media/disk <--------
      
      I've found necessary to use the FL_US_CAPACITY_FIX switch, as without
      it the cell phone is recognized but it went berserk when performing
      low-level functions on it (a fdisk -l /dev/uba for example).
      
      lsusb -v output follows:
      
      Bus 004 Device 004: ID 0421:04bd Nokia Mobile Phones
      Device Descriptor:
        bLength                18
        bDescriptorType         1
        bcdUSB               2.00
        bDeviceClass            0 (Defined at Interface level)
        bDeviceSubClass         0
        bDeviceProtocol         0
        bMaxPacketSize0        64
        idVendor           0x0421 Nokia Mobile Phones
        idProduct          0x04bd
        bcdDevice            6.03
        iManufacturer           1 Nokia
        iProduct                2 Nokia 5200
        iSerial                 3 353930018354523
        bNumConfigurations      1
        Configuration Descriptor:
          bLength                 9
          bDescriptorType         2
          wTotalLength           32
          bNumInterfaces          1
          bConfigurationValue     1
          iConfiguration          0
          bmAttributes         0xc0
            Self Powered
          MaxPower              100mA
          Interface Descriptor:
            bLength                 9
            bDescriptorType         4
            bInterfaceNumber        0
            bAlternateSetting       0
            bNumEndpoints           2
            bInterfaceClass         8 Mass Storage
            bInterfaceSubClass      6 SCSI
            bInterfaceProtocol     80 Bulk (Zip)
            iInterface              0
            Endpoint Descriptor:
              bLength                 7
              bDescriptorType         5
              bEndpointAddress     0x81  EP 1 IN
              bmAttributes            2
                Transfer Type            Bulk
                Synch Type               None
                Usage Type               Data
              wMaxPacketSize     0x0040  1x 64 bytes
              bInterval               0
            Endpoint Descriptor:
              bLength                 7
              bDescriptorType         5
              bEndpointAddress     0x01  EP 1 OUT
              bmAttributes            2
                Transfer Type            Bulk
                Synch Type               None
                Usage Type               Data
              wMaxPacketSize     0x0040  1x 64 bytes
              bInterval               0
      Device Status:     0x0001
        Self Powered
      Signed-off-by: NPaulo Afonso Graner Fessel <pfessel@gmail.com>
      Signed-off-by: NPhil Dibowitz <phil@ipom.com>
      Cc: stable <stable@kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      b8d23491