diff options
author | Martino Facchin <m.facchin@arduino.cc> | 2015-08-13 09:39:21 +0200 |
---|---|---|
committer | Martino Facchin <m.facchin@arduino.cc> | 2015-08-13 09:39:21 +0200 |
commit | b3197c6ef83253d712f4b7b30a0763f18f6d3ddc (patch) | |
tree | c1c11380a35613e3ab8e9264bfb84251a91d5db8 /libraries/HID | |
parent | 98f7ab15884119b1c9f1f58f96a8302200c1e2a3 (diff) | |
parent | 98301ba23a1f7c60b4590330da2ee1c260da7aa6 (diff) |
Merge pull request #3640 from NicoHood/USB-Core-Fixes
Usb core fixes
Diffstat (limited to 'libraries/HID')
-rw-r--r-- | libraries/HID/HID.cpp | 6 | ||||
-rw-r--r-- | libraries/HID/HID.h | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/libraries/HID/HID.cpp b/libraries/HID/HID.cpp index 0d2133e..c629eb9 100644 --- a/libraries/HID/HID.cpp +++ b/libraries/HID/HID.cpp @@ -43,7 +43,7 @@ static u8 HID_INTERFACE; HIDDescriptor _hidInterface; static HIDDescriptorListNode* rootNode = NULL; -static uint8_t sizeof_hidReportDescriptor = 0; +static uint16_t sizeof_hidReportDescriptor = 0; static uint8_t modules_count = 0; //================================================================================ //================================================================================ @@ -59,7 +59,7 @@ int HID_GetInterface(u8* interfaceNum) { D_INTERFACE(HID_INTERFACE,1,3,0,0), D_HIDREPORT(sizeof_hidReportDescriptor), - D_ENDPOINT(USB_ENDPOINT_IN (HID_ENDPOINT_INT),USB_ENDPOINT_TYPE_INTERRUPT,0x40,0x01) + D_ENDPOINT(USB_ENDPOINT_IN (HID_ENDPOINT_INT),USB_ENDPOINT_TYPE_INTERRUPT,USB_EP_SIZE,0x01) }; return USB_SendControl(0,&_hidInterface,sizeof(_hidInterface)); } @@ -91,7 +91,7 @@ void HID_::AppendDescriptor(HIDDescriptorListNode *node) current->next = node; } modules_count++; - sizeof_hidReportDescriptor += node->cb->length; + sizeof_hidReportDescriptor += (uint16_t)node->cb->length; } void HID_::SendReport(u8 id, const void* data, int len) diff --git a/libraries/HID/HID.h b/libraries/HID/HID.h index 89832a9..b9f29b4 100644 --- a/libraries/HID/HID.h +++ b/libraries/HID/HID.h @@ -45,7 +45,7 @@ #define HID_PHYSICAL_DESCRIPTOR_TYPE 0x23 typedef struct __attribute__((packed)) { - u8 length; + uint16_t length; const void* descriptor; } HID_Descriptor; @@ -88,10 +88,10 @@ typedef struct #define HID_TX HID_ENDPOINT_INT #define D_HIDREPORT(_descriptorLength) \ - { 9, 0x21, 0x1, 0x1, 0, 1, 0x22, _descriptorLength, 0 } + { 9, 0x21, 0x1, 0x1, 0, 1, 0x22, _descriptorLength & 0xFF, _descriptorLength >> 8 } #define WEAK __attribute__ ((weak)) #endif -#endif
\ No newline at end of file +#endif |