[PATCH] iso pipe support for usbatm

matthieu castet castet.matthieu at free.fr
Sun Mar 20 09:26:47 EST 2005


matthieu castet wrote:
> Hi,
> 
> Roman Kagan wrote:
> 
>> On Sat, Mar 19, 2005 at 07:28:04PM +0100, matthieu castet wrote:
>>
>>>> BTW do you get -EILSEQ often?  Documentation/usb/error-codes.txt reads:
>>>>
>>>> (*) Error codes like -EPROTO, -EILSEQ and -EOVERFLOW normally indicate
>>>> hardware problems such as bad devices (including firmware) or cables.
>>>>
>>>
>>> I think this is specific to via controler (someone told me that there 
>>> windows driver have some trick for -EILSEQ error)
>>
>>
>>
>> And are there many of those errors?
>>
> When I loged the data, I saw there are EOVERFLOW errors. And because the 
> errors  aren't catch by usbatm, the bad packet go through 
> usbatm_extract_cells and produce the vpi/vci error.
> I will try with a smaller size.
> 

         /* may not be in_interrupt() */
         spin_lock_irqsave(&instance->receive_lock, flags);
         list_add(&rcv->list, &instance->spare_receivers);
         list_add_tail(&buf->list, &instance->filled_receive_buffers);
         if (likely(!urb->status) ||
                         /* via chipset produce lot's of crc error...*/
                         (usb_pipeisoc(instance->rx_endpoint) && 
urb->status == -EILSEQ))
                 tasklet_schedule(&instance->receive_tasklet);
         spin_unlock_irqrestore(&instance->receive_lock, flags);


In case of error : status !=0 couldn't we add the buffer to the 
spare_receive_buffers list ?


Matthieu



More information about the Usbatm mailing list