Re: [PATCH] usbnet: Activate the halt interrupt endpoint to fix endless "XactErr" error

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

 



On Sun, Jun 10, 2012 at 7:13 PM, Huajun Li <huajun.li.lee@xxxxxxxxx> wrote:
> On Sun, Jun 10, 2012 at 5:53 PM, Ming Lei <tom.leiming@xxxxxxxxx> wrote:
>> On Sun, Jun 10, 2012 at 9:07 AM, Huajun Li <huajun.li.lee@xxxxxxxxx> wrote:
>>
>>>
>>> However, the other interface can work, it is of  "bInterfaceClass
>>>  10 CDC Data". I can set IP to usb0 and it work fine.
>>>
>>> BTW, the device has 2 interfaces, one is of "bInterfaceClass        10
>>> CDC Data" which includes bulk in/out endpoint for rx/tx;  the other is
>>> "bInterfaceClass         2 Communications" which contains the
>>> interrupt endpoint. From info dumped by "lsusb -v", the device is
>>> compliance with CDC protocol.
>>
>> Both the two interfaces belongs to cdc_ether device, see cdc spec
>> and usbnet_generic_cdc_bind(), which will make cdc_ether dirver to
>> claim data interface.
>>
>
> Yes, you are right.
>
>>>
>>>>>> BTW, the device can work well if I modprobe  cdc_ether driver after
>>>>>> changed the configuration.
>>>>
>>>> Maybe just the delay introduced by 'modprobe cdc_ether' fixes the
>>>> problem.
>>
>> If you can change the firmware, please find the bug and fix it. Otherwise,
>> you can add a simple quirk in cdc_ether.c for your device.
>>
> Yes, this solution can solve the issue directly.
>
> However,  besides "-EPIPE", I think usbnet.c should also handle the
> error of "-EPROTO".

Yes, you can clear halt for -EPIPE, and take Alan's suggestion to
reset device if the error of "-EPROTO" is got.


Thanks,
-- 
Ming Lei
--
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