I am trying to get FC devel to recognize my cell phone (searching Google confirms that it is indeed supposed to work with the acm driver), but I am getting the "cdc_acm: probe of 1-1:1.0 failed with error -5" error from cdc_acm. cat /proc/bus/usb/devices T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.5-1.327custom uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:1d.0 C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 5 Spd=12 MxCh= 0 D: Ver= 1.01 Cls=02(comm.) Sub=00 Prot=00 MxPS=16 #Cfgs= 1 P: Vendor=22b8 ProdID=2822 Rev= 0.01 S: Manufacturer=Motorola, Inc. S: Product=Motorola T720c C:* #Ifs= 2 Cfg#= 1 Atr=c0 MxPwr= 20mA I: If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=02 Prot=01 Driver=(none) E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=32ms I: If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=(none) E: Ad=8a(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=0b(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
Any hints on where I look and how I start investigating this? Thanks!
I got it to work! Near the top of the acm_probe function in drivers/usb/class/cdc-acm.c, there is the following code: if (usb_interface_claimed(cfacm->interface[j]) || usb_interface_claimed(cfacm->interface[j + 1])) continue; The probe loop is only executed once (with j = 0) and when it is executed, it turns out that usb_interface_claimed(cfacm->interface[0]) is true, while usb_interface_claimed(cfacm->interface[1]) is false and the probe aborts. After I commented out those three lines, everything works! I am guessing that I only masked the real issue (i.e. why was the usb_interface_claimed true?), hopefully somebody more knowledgeable than I am can figure out what is causing it.
According to David Brownell (david-b <at> pacbell.net), this should be fixed in the current Linus' BK snapshot.
This now works for me in 2.6.5-1.346