I'm trying to work with a CDC-ACM device which has five end-points.
The three first ones are the regular Notification + Data and the other two are proprietary end-points, for transferring some binary data.

The device has no Linux driver (only windows).

If I compile the device to have only 3 end-points, everything works fine:

T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  3 Spd=12  MxCh= 0
D:  Ver= 1.01 Cls=02(comm.) Sub=00 Prot=00 MxPS=16 #Cfgs=  1
P:  Vendor=xxxx ProdID=xxxx Rev= 0.00
S:  Manufacturer=xxxxxxxxxxxxxxxxxxx
S:  Product=xxxxxxxxxxxxxxxxxxxxxxxxxx
S:  SerialNumber=Serial Number
C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=100mA
I: 
If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=02 Prot=01 Driver=(acm)
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=(acm)
E:
Ad=8a(I) Atr=02(Bulk) MxPS=  64 Ivl=  0ms
E: 
Ad=0b(O) Atr=02(Bulk) MxPS=  64 Ivl=  0ms

But if I compile it to work with all of the end-points the ACM driver doesn't load:

T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 11 Spd=12  MxCh= 0
D:  Ver= 1.01 Cls=02(comm.) Sub=00 Prot=00 MxPS=16 #Cfgs=  1
P:  Vendor=xxxx ProdID=xxxx Rev= 0.00
S:  Manufacturer=xxxxxxxxxxxxxxxx
S:  Product=xxxxxxxxxxxxxx
S:  SerialNumber=Serial Number
C:* #Ifs= 3 Cfg#= 1 Atr=e0 MxPwr=100mA
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=128ms
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
I: 
If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
E: 
Ad=83(I) Atr=02(Bulk) MxPS=  64 Ivl=  0ms
E: 
Ad=06(O) Atr=02(Bulk) MxPS=  64 Ivl=  0ms

I'm compiling exactly the same source code in both cases, changing only the "Number of avail interfaces" parameter between 2 and 3.
What I wanted was that the ACM driver will recognize the device as a modem.

I REALLY need some help here...
Is it possible to have an ACM device with more then 3 end-points? (According to the spec. it should work fine).
Should I change anything in the ACM driver in-order for the modem to work fine?

Thanks in advance,

--Gilad

Reply via email to