Re: [PATCH RFC] cdc_acm: handle shared control/data interface

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

 



On Sunday 28 December 2008, Oliver Neukum wrote:
> Am Sonntag, 28. Dezember 2008 21:25:49 schrieb Tilman Schmidt:
> > On Sun, 28 Dec 2008 15:38:25 +0100, Oliver Neukum wrote:
> > > You cannot do this this way. Sharing an interface is against the spec.
> > 
> > I see. Thanks for that information. So a device advertising an
> > interface with:
> > 
> >       bInterfaceNumber        2
> >       bNumEndpoints           3
> >       bInterfaceClass         2 Communications
> >       bInterfaceSubClass      2 Abstract (modem)
> >       bInterfaceProtocol      1 AT-commands (v.25ter)
> >       CDC Union:
> >         bMasterInterface        2
> >         bSlaveInterface         2 
> > 
> > would not be conforming to the USB standard?
> 
> Quote from CDC spec:
> Although this specification defines both the Communications Interface Class
> and Data Interface Class, they are two different classes. All communications
> devices shall have an interface using the Communications Class to manage the
> device and optionally specify themselves as communications devices by using
> the Communications Device Class code. Additionally, the device has some
> number of other interfaces used for actual data transmission.
> ----
> 
> "Other interfaces" is pretty clear.

Extremely clear, IMO.

But it seems that some Microsoft's engineers couldn't read, and that's
why some CDC ACM devices don't adhere to that clear language:  if they
conform to the industry standard specification about how to implement
multiple ACM functions per device, they can't use the standard MS-Windows
ACM driver.  A single function with two interfaces ... OK.  Two functions
with two interfaces each ... fail.

- Dave


--
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