usbfs: usb_submit_urb returned -22
I use iButtons for logons and this seems to work fine with a SIS chipset but not a VIA chipset.
I use Debian linux 2.6.18-5-686 stable and the usb device used for the iButtons is shown as below.
# lsusb
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 003: ID 04fa:2490 Dallas Semiconductor DS1490F 2-in-1 Fob, 1-Wire adapter
Bus 001 Device 001: ID 0000:0000
-A driver is automatically loaded for this but I get the following:
usbfs: interface 0 claimed by DS9490R while 'java' sets config #1
-So I remove the module : #rmmod ds2490
This works fine on a board with an SiS chipset and lsmod shows it uses ehci_hcd and ohci_hcd usb host controllers.
The /proc/bus/usb/devices file contains the following:
T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 3 Spd=12 MxCh= 0
D: Ver= 1.00 Cls=ff(vend.) Sub=ff Prot=ff MxPS= 8 #Cfgs= 1
P: Vendor=04fa ProdID=2490 Rev= 0.02
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=usbfs
E: Ad=81(I) Atr=03(Int.) MxPS= 32 Ivl=10ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 16 Ivl=0ms
E: Ad=83(I) Atr=02(Bulk) MxPS= 16 Ivl=0ms
I: If#= 0 Alt= 1 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=usbfs
E: Ad=81(I) Atr=03(Int.) MxPS= 32 Ivl=10ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=83(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
I: If#= 0 Alt= 2 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=usbfs
E: Ad=81(I) Atr=03(Int.) MxPS= 32 Ivl=1ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 16 Ivl=0ms
E: Ad=83(I) Atr=02(Bulk) MxPS= 16 Ivl=0ms
I: If#= 0 Alt= 3 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=usbfs
E: Ad=81(I) Atr=03(Int.) MxPS= 32 Ivl=1ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=83(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
Which shows that is using the usbfs driver.
ON the other hand with a board with a VIA chipset it uses ehci_hcd and uhci_hcd usb host controllers.
The /proc/bus/usb/devices file contains the following:
T: Bus=03 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
D: Ver= 1.00 Cls=ff(vend.) Sub=ff Prot=ff MxPS= 8 #Cfgs= 1
P: Vendor=04fa ProdID=2490 Rev= 0.02
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
E: Ad=81(I) Atr=03(Int.) MxPS= 32 Ivl=10ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 16 Ivl=0ms
E: Ad=83(I) Atr=02(Bulk) MxPS= 16 Ivl=0ms
I: If#= 0 Alt= 1 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
E: Ad=81(I) Atr=03(Int.) MxPS= 32 Ivl=10ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=83(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
I: If#= 0 Alt= 2 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
E: Ad=81(I) Atr=03(Int.) MxPS= 32 Ivl=1ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 16 Ivl=0ms
E: Ad=83(I) Atr=02(Bulk) MxPS= 16 Ivl=0ms
I: If#= 0 Alt= 3 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
E: Ad=81(I) Atr=03(Int.) MxPS= 32 Ivl=1ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=83(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
I've feel it would work if I could just get it to use the usbfs driver.
In dmesg I get the following which may show why it's failing to use the usbfs driver????:
usbfs: usb_submit_urb returned -22
I've tried to mount it with usbfs and tried the following in fstab:
# cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
usbfs /proc/bus/usb usbfs rw,devgid=100,devmode=0664 0 0
sysfs /sys sysfs default 0 0
none /proc/bus/usb usbfs defaults 0 0
/dev/hda1 / ext3 defaults,errors=remount-ro 0 1
/dev/hda5 none swap sw 0 0
/dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0
Hope this all makes sense!!
|