summaryrefslogtreecommitdiff
path: root/demos/device
diff options
context:
space:
mode:
authorhathach <[email protected]>2013-06-03 15:56:14 +0700
committerhathach <[email protected]>2013-06-03 15:56:14 +0700
commit9f9adca03b97874754075b9c1a4612c2be1e5f07 (patch)
tree2397037b16feb292b371a848dfe947f370624252 /demos/device
parent52f18f37848615b9ebe8d749c16eea114b24f524 (diff)
add TUSB_CFG_PROUDCT_ID check
move USB_MAX_EP_NUM to device dependency - lpc43 --> 6 - lpc11/13 --> 5
Diffstat (limited to 'demos/device')
-rw-r--r--demos/device/keyboard/tusb_descriptors.c4
-rw-r--r--demos/device/keyboard/tusb_descriptors.h7
2 files changed, 8 insertions, 3 deletions
diff --git a/demos/device/keyboard/tusb_descriptors.c b/demos/device/keyboard/tusb_descriptors.c
index b69e30e3a..584e3f398 100644
--- a/demos/device/keyboard/tusb_descriptors.c
+++ b/demos/device/keyboard/tusb_descriptors.c
@@ -132,14 +132,14 @@ tusb_descriptor_device_t app_tusb_desc_device =
.bMaxPacketSize0 = USB_MAX_PACKET0,
.idVendor = TUSB_CFG_DEVICE_VENDORID,
- .idProduct = USB_PRODUCT_ID,
+ .idProduct = TUSB_CFG_PRODUCT_ID,
.bcdDevice = 0x0100,
.iManufacturer = 0x01,
.iProduct = 0x02,
.iSerialNumber = 0x03,
- .bNumConfigurations = 0x01 // TODO configuration number
+ .bNumConfigurations = 0x01 // TODO multiple configurations
};
diff --git a/demos/device/keyboard/tusb_descriptors.h b/demos/device/keyboard/tusb_descriptors.h
index 68dff8c93..e9022ab19 100644
--- a/demos/device/keyboard/tusb_descriptors.h
+++ b/demos/device/keyboard/tusb_descriptors.h
@@ -98,10 +98,15 @@ typedef ATTR_PACKED_STRUCT(struct)
#define TOTAL_INTEFACES (INTERFACES_OF_CDC + INTERFACES_OF_HID_KEYBOARD + INTERFACES_OF_HID_MOUSE + INTERFACES_OF_HID_GENERIC + INTERFACES_OF_MASS_STORAGE)
+
+// each combination of interfaces need to have different productid, as windows will bind & remember device driver after the
+// first plug.
+#ifndef TUSB_CFG_PRODUCT_ID
// Bitmap: MassStorage | Generic | Mouse | Key | CDC
#define PRODUCTID_BITMAP(interface, n) ( (INTERFACES_OF_##interface ? 1 : 0) << (n) )
-#define USB_PRODUCT_ID (0x2000 | ( PRODUCTID_BITMAP(CDC, 0) | PRODUCTID_BITMAP(HID_KEYBOARD, 1) | PRODUCTID_BITMAP(HID_MOUSE, 2) | \
+#define TUSB_CFG_PRODUCT_ID (0x2000 | ( PRODUCTID_BITMAP(CDC, 0) | PRODUCTID_BITMAP(HID_KEYBOARD, 1) | PRODUCTID_BITMAP(HID_MOUSE, 2) | \
PRODUCTID_BITMAP(HID_GENERIC, 3) | PRODUCTID_BITMAP(MASS_STORAGE, 4) ) )
+#endif
///////////////////////////////////////////////////////////////////////
typedef ATTR_PACKED_STRUCT(struct)