On Mon, Feb 16, 2015 at 02:20:06PM +0000, Stuart Henderson wrote: > [...] > It's Arduino SA isn't it? The rest looks good to me. > [...]
The controller reports itself as made by 'Arduino LLC' in the usbdevs output, but according to http://www.linux-usb.org/usb.ids, you're right. I think going with the established name is a better idea. I've attached an amended patch. -- Gregor Best Index: dev/usb/umodem.c =================================================================== RCS file: /mnt/media/cvs/src/sys/dev/usb/umodem.c,v retrieving revision 1.57 diff -u -p -u -r1.57 umodem.c --- dev/usb/umodem.c 12 Jul 2014 20:26:33 -0000 1.57 +++ dev/usb/umodem.c 13 Feb 2015 19:36:39 -0000 @@ -250,6 +250,10 @@ umodem_match(struct device *parent, void id->bInterfaceNumber == 0) ret = UMATCH_VENDOR_PRODUCT; + if (UGETW(dd->idVendor) == USB_VENDOR_ARDUINO && + UGETW(dd->idProduct) == USB_PRODUCT_ARDUINO_LEONARDO) + ret = UMATCH_VENDOR_PRODUCT; + if (ret == UMATCH_NONE && id->bInterfaceClass == UICLASS_CDC && id->bInterfaceSubClass == UISUBCLASS_ABSTRACT_CONTROL_MODEL && Index: dev/usb/usbdevs =================================================================== RCS file: /mnt/media/cvs/src/sys/dev/usb/usbdevs,v retrieving revision 1.644 diff -u -p -u -r1.644 usbdevs --- dev/usb/usbdevs 9 Jan 2015 20:41:48 -0000 1.644 +++ dev/usb/usbdevs 13 Feb 2015 19:36:40 -0000 @@ -54,6 +54,7 @@ vendor PLANEX4 0x0053 Planex Communicat vendor UNKNOWN2 0x0105 Unknown vendor vendor EGALAX2 0x0123 eGalax vendor UNKNOWN6 0x01e1 Unknown vendor +vendor ARDUINO 0x2341 Arduino SA vendor HUMAX 0x02ad HUMAX vendor BWCT 0x03da Bernd Walter Computer Technology vendor AOX 0x03e8 AOX @@ -977,6 +978,9 @@ product APPLE ISIGHT 0x8502 iSight /* Araneus Information Systems products */ product ARANEUS ALEA 0x0001 True Random Number Generator + +/* Arduino SA products */ +product ARDUINO LEONARDO 0x8036 Arduino Lenoardo /* Arkmicro products */ product ARKMICRO ARK3116 0x0232 ARK3116 Serial Index: dev/usb/usbdevs.h =================================================================== RCS file: /mnt/media/cvs/src/sys/dev/usb/usbdevs.h,v retrieving revision 1.656 diff -u -p -u -r1.656 usbdevs.h --- dev/usb/usbdevs.h 9 Jan 2015 20:42:40 -0000 1.656 +++ dev/usb/usbdevs.h 13 Feb 2015 19:36:44 -0000 @@ -1,4 +1,4 @@ -/* $OpenBSD: usbdevs.h,v 1.656 2015/01/09 20:42:40 kettenis Exp $ */ +/* $OpenBSD$ */ /* * THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. @@ -61,6 +61,7 @@ #define USB_VENDOR_UNKNOWN2 0x0105 /* Unknown vendor */ #define USB_VENDOR_EGALAX2 0x0123 /* eGalax */ #define USB_VENDOR_UNKNOWN6 0x01e1 /* Unknown vendor */ +#define USB_VENDOR_ARDUINO 0x2341 /* Arduino SA */ #define USB_VENDOR_HUMAX 0x02ad /* HUMAX */ #define USB_VENDOR_BWCT 0x03da /* Bernd Walter Computer Technology */ #define USB_VENDOR_AOX 0x03e8 /* AOX */ @@ -984,6 +985,9 @@ /* Araneus Information Systems products */ #define USB_PRODUCT_ARANEUS_ALEA 0x0001 /* True Random Number Generator */ + +/* Arduino SA products */ +#define USB_PRODUCT_ARDUINO_LEONARDO 0x8036 /* Arduino Lenoardo */ /* Arkmicro products */ #define USB_PRODUCT_ARKMICRO_ARK3116 0x0232 /* ARK3116 Serial */ Index: dev/usb/usbdevs_data.h =================================================================== RCS file: /mnt/media/cvs/src/sys/dev/usb/usbdevs_data.h,v retrieving revision 1.650 diff -u -p -u -r1.650 usbdevs_data.h --- dev/usb/usbdevs_data.h 9 Jan 2015 20:42:40 -0000 1.650 +++ dev/usb/usbdevs_data.h 13 Feb 2015 19:36:44 -0000 @@ -1,4 +1,4 @@ -/* $OpenBSD: usbdevs_data.h,v 1.650 2015/01/09 20:42:40 kettenis Exp $ */ +/* $OpenBSD$ */ /* * THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. @@ -962,6 +962,10 @@ const struct usb_known_product usb_known "True Random Number Generator", }, { + USB_VENDOR_ARDUINO, USB_PRODUCT_ARDUINO_LEONARDO, + "Arduino Lenoardo", + }, + { USB_VENDOR_ARKMICRO, USB_PRODUCT_ARKMICRO_ARK3116, "ARK3116 Serial", }, @@ -11248,6 +11252,10 @@ const struct usb_known_vendor usb_known_ { USB_VENDOR_UNKNOWN6, "Unknown vendor", + }, + { + USB_VENDOR_ARDUINO, + "Arduino SA", }, { USB_VENDOR_HUMAX,