svn commit: r257446 - in head/sys/dev/usb: . serial

Adrian Chadd adrian at FreeBSD.org
Thu Oct 31 13:54:52 UTC 2013


Author: adrian
Date: Thu Oct 31 13:54:51 2013
New Revision: 257446
URL: http://svnweb.freebsd.org/changeset/base/257446

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

Modified:
  head/sys/dev/usb/serial/umodem.c
  head/sys/dev/usb/usb.h

Modified: head/sys/dev/usb/serial/umodem.c
==============================================================================
--- head/sys/dev/usb/serial/umodem.c	Thu Oct 31 13:47:39 2013	(r257445)
+++ head/sys/dev/usb/serial/umodem.c	Thu Oct 31 13:54:51 2013	(r257446)
@@ -128,6 +128,9 @@ static const STRUCT_USB_HOST_ID umodem_d
 	{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),

Modified: head/sys/dev/usb/usb.h
==============================================================================
--- head/sys/dev/usb/usb.h	Thu Oct 31 13:47:39 2013	(r257445)
+++ head/sys/dev/usb/usb.h	Thu Oct 31 13:54:51 2013	(r257446)
@@ -441,6 +441,7 @@ typedef struct usb_interface_assoc_descr
 #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


More information about the svn-src-head mailing list