altos: Allow software to offer other USB interface classes than CDC
[fw/altos] / src / kernel / ao_product.c
index b9327bacbf8b4a9543775c335cefd63ab97becfc..baee8dd6e7a810ad357ef76a0295e875f6733a96 100644 (file)
@@ -33,6 +33,10 @@ const char ao_product[] = AO_iProduct_STRING;
 #define AO_USB_MAX_POWER       100
 #endif
 
+#ifndef AO_USB_INTERFACE_CLASS
+#define AO_USB_INTERFACE_CLASS 0x02
+#endif
+
 #include "ao_usb.h"
 /* USB descriptors in one giant block of bytes */
 AO_ROMCONFIG_SYMBOL(0x00aa) uint8_t ao_usb_descriptors [] =
@@ -69,7 +73,7 @@ AO_ROMCONFIG_SYMBOL(0x00aa) uint8_t ao_usb_descriptors [] =
        0x00,                   /*  bInterfaceNumber */
        0x00,                   /*  bAlternateSetting */
        0x01,                   /*  bNumEndPoints */
-       0x02,                   /*  bInterfaceClass */
+       AO_USB_INTERFACE_CLASS, /*  bInterfaceClass */
        0x02,                   /*  bInterfaceSubClass */
        0x01,                   /*  bInterfaceProtocol, linux requires value of 1 for the cdc_acm module */
        0x00,                   /*  iInterface */