> > Redirecting stderr and stdout of 'lsusb -v' I get the following details.
> > Note: the device restart if it get probed with 'lsusb -v'
> > 
> > 
> > Bus 001 Device 011: ID 10d6:2200 Actions Semiconductor Co., Ltd 
> > Device Descriptor:
> >   bLength                18
> >   bDescriptorType         1
> >   bcdUSB               2.00
> >   bDeviceClass          255 Vendor Specific Class
> >   bDeviceSubClass         0 
> >   bDeviceProtocol         0 
> >   bMaxPacketSize0        64
> >   idVendor           0x10d6 Actions Semiconductor Co., Ltd
> >   idProduct          0x2200 
> 
> Notice how this is different from what appears when you left the device 
> plugged in at boot time, earlier?
> 
If it's already plugged at boot time it's registered as:

Bus 001 Device 002: ID 10d6:1101 Actions Semiconductor Co., Ltd 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x10d6 Actions Semiconductor Co., Ltd
  idProduct          0x1101 
  bcdDevice            1.00
  iManufacturer           0 
  iProduct                1 USB 2.0(HS) Flash Disk 
  iSerial                 2 C621C804E79ACB41A8825E5C3BD13556
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      5 SFF-8070i
      bInterfaceProtocol     80 
      iInterface              0 
      Endpoint Descriptor:
bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  bNumConfigurations      1
Device Status:     0x0000
  (Bus Powered)

// ------- END LSUSB -V -----------

Why 10d6:1101 instead of 10d6:2200 ????

The behavior is also different:
If the flash disk is already plugged at boot there is a kind of
constant sync between pc and the drive (with consequent load of
usb-storage debug messages, the animated icon on device display confirm this)
Most important thing: there is a /dev/sdb file to mount

Else the icon stand still, there's no usb-storage debug output and there's no
device in /dev to mount


> ...
> >       Endpoint Descriptor:
> >         bLength                 7
> >         bDescriptorType         5
> >         bEndpointAddress     0x83  EP can't get device qualifier: No
> > such device
> > can't get debug descriptor: No such device
> > cannot read device status, No such device (19)
> > 3 IN
> >         bmAttributes            3
> >           Transfer Type            Interrupt
> >           Synch Type               None
> >           Usage Type               Data
> >         wMaxPacketSize     0x0040  1x 64 bytes
> >         bInterval             200
> > 
> > // ---------- END OF LSUSB -V  --------------
> > 
> > I guess something went wrong.
> 
> Probably lsusb triggers that same firmware bug.

With the device already plugged lsusb doesn't trigger the bug
> 
> > I put a rule in the udev rules directory:
> > 
> > SUBSYSTEMS=="usb", ATTRS{idVendor}=="10d6",
> > ATTRS{idProduct}=="2200", KERNEL=="sd*",
> > GROUP="disk", MODE="0664", SYMLINK+="mp3_noblex"
> > 
> > the symink point to usbdev1.12_ep83 that is a
> > character special and can't be mounted

Anyway I get rid of this udev rule for the moment

> I don't understand what wrong, but it's a udev problem rather than a 
> kernel problem.
> 
> Now that the device gets initialized correctly, does it actually work 
> as it should?

If plugged after boot it appears to be stuck.

The right ID seems to be 10d6:1101 but it's recognized
only if the device is plugged since boot time.

Hoping for some good news,
cheers,
Fabio
-
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to