Re: Urb completion handler returns -32

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The device tree is here:

root@naveen-OptiPlex-745:/home/naveen# lsusb -t

1-1.5.2:1.2: No such file or directory

1-1.5.3:1.2: No such file or directory

1-1.5.4:1.2: No such file or directory

1-1.5.5:1.2: No such file or directory

1-1.5.6:1.2: No such file or directory

1-1.5.7.1:1.2: No such file or directory

1-1.5.7.2:1.2: No such file or directory

1-1.5.7.3:1.2: No such file or directory

/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/2p, 480M

    |__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/6p, 480M

        |__ Port 1: Dev 3, If 0, Class=HID, Driver=usbhid, 12M

        |__ Port 1: Dev 3, If 1, Class=HID, Driver=usbhid, 12M

/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci_hcd/2p, 480M

    |__ Port 1: Dev 2, If 0, Class=hub, Driver=hub/6p, 480M

        |__ Port 3: Dev 3, If 0, Class=HID, Driver=usbhid, 480M

        |__ Port 3: Dev 3, If 1, Class=HID, Driver=usbhid, 480M

        |__ Port 3: Dev 3, If 2, Class=stor., Driver=usb-storage, 480M

        |__ Port 3: Dev 3, If 3, Class=stor., Driver=usb-storage, 480M

        |__ Port 5: Dev 4, If 0, Class=hub, Driver=hub/7p, 12M

            |__ Port 1: Dev 5, If 0, Class=hub, Driver=hub/7p, 12M

                |__ Port 1: Dev 12, If 0, Class=vend., Driver=babel, 12M

                |__ Port 2: Dev 13, If 0, Class=vend., Driver=babel, 12M

                |__ Port 3: Dev 14, If 0, Class=vend., Driver=babel, 12M

                |__ Port 4: Dev 15, If 0, Class=vend., Driver=babel, 12M

                |__ Port 5: Dev 16, If 0, Class=vend., Driver=babel, 12M

                |__ Port 6: Dev 17, If 0, Class=vend., Driver=babel, 12M

                |__ Port 7: Dev 18, If 0, Class=hub, Driver=hub/2p, 12M

                    |__ Port 1: Dev 22, If 0, Class=vend., Driver=babel, 12M

                    |__ Port 2: Dev 23, If 0, Class=vend., Driver=babel, 12M

            |__ Port 2: Dev 66, If 0, Class='bInterfaceClass 0xe0 not
yet handled', Driver=mybtusb, 12M

            |__ Port 2: Dev 66, If 1, Class='bInterfaceClass 0xe0 not
yet handled', Driver=mybtusb, 12M

            |__ Port 2: Dev 66, If 2, Class=app., Driver=, 12M

            |__ Port 4: Dev 63, If 0, Class='bInterfaceClass 0xe0 not
yet handled', Driver=mybtusb, 12M

            |__ Port 4: Dev 63, If 1, Class='bInterfaceClass 0xe0 not
yet handled', Driver=mybtusb, 12M

            |__ Port 4: Dev 63, If 2, Class=app., Driver=, 12M

            |__ Port 3: Dev 67, If 0, Class='bInterfaceClass 0xe0 not
yet handled', Driver=mybtusb, 12M

            |__ Port 3: Dev 67, If 1, Class='bInterfaceClass 0xe0 not
yet handled', Driver=mybtusb, 12M

            |__ Port 3: Dev 67, If 2, Class=app., Driver=, 12M

            |__ Port 5: Dev 68, If 0, Class='bInterfaceClass 0xe0 not
yet handled', Driver=mybtusb, 12M

            |__ Port 5: Dev 68, If 1, Class='bInterfaceClass 0xe0 not
yet handled', Driver=mybtusb, 12M

            |__ Port 5: Dev 68, If 2, Class=app., Driver=, 12M

            |__ Port 6: Dev 69, If 0, Class='bInterfaceClass 0xe0 not
yet handled', Driver=mybtusb, 12M

            |__ Port 6: Dev 69, If 1, Class='bInterfaceClass 0xe0 not
yet handled', Driver=mybtusb, 12M

            |__ Port 6: Dev 69, If 2, Class=app., Driver=, 12M

            |__ Port 7: Dev 11, If 0, Class=hub, Driver=hub/3p, 12M

                |__ Port 1: Dev 70, If 0, Class='bInterfaceClass 0xe0
not yet handled', Driver=mybtusb, 12M

                |__ Port 1: Dev 70, If 1, Class='bInterfaceClass 0xe0
not yet handled', Driver=mybtusb, 12M

                |__ Port 1: Dev 70, If 2, Class=app., Driver=, 12M

                |__ Port 2: Dev 71, If 0, Class='bInterfaceClass 0xe0
not yet handled', Driver=mybtusb, 12M

                |__ Port 2: Dev 71, If 1, Class='bInterfaceClass 0xe0
not yet handled', Driver=mybtusb, 12M

                |__ Port 2: Dev 71, If 2, Class=app., Driver=, 12M

                |__ Port 3: Dev 72, If 0, Class='bInterfaceClass 0xe0
not yet handled', Driver=mybtusb, 12M

                |__ Port 3: Dev 72, If 1, Class='bInterfaceClass 0xe0
not yet handled', Driver=mybtusb, 12M

                |__ Port 3: Dev 72, If 2, Class=app., Driver=, 12M

On Tue, Sep 30, 2014 at 12:05 PM, Naveen Kumar Parna
<pnaveenkos@xxxxxxxxx> wrote:
> Hi Alan,
>
>> The device replied with a STALL.
>> The device runs at low speed or full speed and is connected through a USB-2 hub
>
> Yes, my device is full speed (12Mbps) device and connected to 2.0 root
> hub. So how  to avoid getting the STALL?
>
>
>
> I attached the usbmon log and Ellisys USB analyser log.
>
>
>
> I connected the eight similar devices(USB Bluetooth Dongles) to host
> and captured the logs.
>
> My device numbers are here :
>
> Bus 001 Device Numbers (063\066\067\068\069\070\071\072)
>
>
>
> Usbmon log shows STALL packets for INT in URB completion handler
>
> $ tail -f /tmp/1.mon.out | grep "C Ii"
>
> ffff8800aaedb780 3159611663 C Ii:1:072:1 -32:1 0
>
> ffff880131449cc0 3360277718 C Ii:1:068:1 -32:1 0
>
> ffff8800aaedb9c0 3360278570 C Ii:1:069:1 -32:1 0
>
> ffff880131f52000 3360291656 C Ii:1:067:1 -32:1 0
>
> ffff8800aae88600 3360299542 C Ii:1:068:1 -32:1 0
>
>
>
> On receiving the STALL response, work queue got scheduled in INT in
> URB completion handler for clearing halt condition(used
> usb_clear_halt() API in that work queue)
>
>
>
> I enabled “Drop Start of Frames and Keep Alives” & “Drop NAK
> transactions” recording options before taking the Ellisys USB analyser
> log.
>
> I don’t see STALL packet in Ellisys USB analyser log, but only
> observed in usbmon log. Does it mean, device is not sending the STALL,
> but only Host controller driver is sending it to my USB device driver?
>
> On Tue, Sep 30, 2014 at 11:59 AM, Naveen Kumar Parna
> <pnaveenkos@xxxxxxxxx> wrote:
>> Hi Alan,
>>
>>> The device replied with a STALL.
>>> The device runs at low speed or full speed and is connected through a USB-2 hub
>>
>> Yes, my device is full speed (12Mbps) device and connected to 2.0 root
>> hub. So how  to avoid getting the STALL?
>>
>>
>>
>> I attached the usbmon log and Ellisys USB analyser log.
>>
>>
>>
>> I connected the eight similar devices(USB Bluetooth Dongles) to host
>> and captured the logs.
>>
>> My device numbers are here :
>>
>> Bus 001 Device Numbers (063\066\067\068\069\070\071\072)
>>
>>
>>
>> Usbmon log shows STALL packets for INT in URB completion handler
>>
>> $ tail -f /tmp/1.mon.out | grep "C Ii"
>>
>> ffff8800aaedb780 3159611663 C Ii:1:072:1 -32:1 0
>>
>> ffff880131449cc0 3360277718 C Ii:1:068:1 -32:1 0
>>
>> ffff8800aaedb9c0 3360278570 C Ii:1:069:1 -32:1 0
>>
>> ffff880131f52000 3360291656 C Ii:1:067:1 -32:1 0
>>
>> ffff8800aae88600 3360299542 C Ii:1:068:1 -32:1 0
>>
>>
>>
>> On receiving the STALL response, work queue got scheduled in INT in
>> URB completion handler for clearing halt condition(used
>> usb_clear_halt() API in that work queue)
>>
>>
>>
>> I enabled “Drop Start of Frames and Keep Alives” & “Drop NAK
>> transactions” recording options before taking the Ellisys USB analyser
>> log.
>>
>> I don’t see STALL packet in Ellisys USB analyser log, but only
>> observed in usbmon log. Does it mean, device is not sending the STALL,
>> but only Host controller driver is sending it to my USB device driver?
>>
>> On Mon, Sep 29, 2014 at 7:01 PM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
>>> On Mon, 29 Sep 2014, Naveen Kumar Parna wrote:
>>>
>>>> Hi All,
>>>>
>>>> I want to know the reason for getting INT urb completion status as -EPIPE ?
>>>
>>> The most common reasons are:
>>>
>>>         The device replied with a STALL.
>>>
>>>         The device runs at low speed or full speed and is connected
>>>         through a USB-2 hub.  Under those conditions, URBs complete
>>>         with -EPIPE status when the device is disconnected.
>>>
>>> Alan Stern
>>>
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux