Allow the Arduino Leonardo to work by supporting CDC=0 devices.

CDC=0 simply means "no command codes", CDC=1 means "AT command codes."
There's no driver change required!  It's purely to tell the application
layer whether to speak AT commands or not.  Things are all still serial.

PR:		usb/183505
Reviewed by:	hps
MFC after:	1 week
This commit is contained in:
adrian 2013-10-31 13:54:51 +00:00
parent 4d11df94bd
commit f5989d032d
2 changed files with 4 additions and 0 deletions

View File

@ -128,6 +128,9 @@ static const STRUCT_USB_HOST_ID umodem_devs[] = {
{USB_IFACE_CLASS(UICLASS_CDC),
USB_IFACE_SUBCLASS(UISUBCLASS_ABSTRACT_CONTROL_MODEL),
USB_IFACE_PROTOCOL(UIPROTO_CDC_AT)},
{USB_IFACE_CLASS(UICLASS_CDC),
USB_IFACE_SUBCLASS(UISUBCLASS_ABSTRACT_CONTROL_MODEL),
USB_IFACE_PROTOCOL(UIPROTO_CDC_NONE)},
/* Huawei Modem class match */
{USB_IFACE_CLASS(UICLASS_CDC),
USB_IFACE_SUBCLASS(UISUBCLASS_ABSTRACT_CONTROL_MODEL),

View File

@ -441,6 +441,7 @@ typedef struct usb_interface_assoc_descriptor usb_interface_assoc_descriptor_t;
#define UISUBCLASS_ETHERNET_EMULATION_MODEL 12
#define UISUBCLASS_NETWORK_CONTROL_MODEL 13
#define UIPROTO_CDC_NONE 0
#define UIPROTO_CDC_AT 1
#define UICLASS_HID 0x03