X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/3d4d8e7f628f9dc9981242f69b097333faa9940d..2e76ad721e494f3a14ece73100ea9a2144c6fe8e:/LUFA/Drivers/USB/Class/Common/HID.h diff --git a/LUFA/Drivers/USB/Class/Common/HID.h b/LUFA/Drivers/USB/Class/Common/HID.h index fd35905e6..a860b6569 100644 --- a/LUFA/Drivers/USB/Class/Common/HID.h +++ b/LUFA/Drivers/USB/Class/Common/HID.h @@ -51,11 +51,9 @@ #define _HID_CLASS_COMMON_H_ /* Includes: */ - #include "../../HighLevel/StdDescriptors.h" + #include "../../Core/StdDescriptors.h" #include "HIDParser.h" - #include - /* Preprocessor Checks: */ #if !defined(__INCLUDE_FROM_HID_DRIVER) #error Do not include this file directly. Include LUFA/Drivers/USB.h instead. @@ -104,7 +102,7 @@ #define HID_KEYBOARD_LED_KATANA (1 << 3) //@} - /** \name Keyboard Standard Report Key Scancodes */ + /** \name Keyboard Standard Report Key Scan-codes */ //@{ #define HID_KEYBOARD_SC_ERROR_ROLLOVER 0x01 #define HID_KEYBOARD_SC_POST_FAIL 0x02 @@ -362,7 +360,7 @@ HID_RI_PHYSICAL_MINIMUM(16, MinPhysicalVal), \ HID_RI_PHYSICAL_MAXIMUM(16, MaxPhysicalVal), \ HID_RI_REPORT_COUNT(8, 0x02), \ - HID_RI_REPORT_SIZE(8, (((((uint16_t)MinAxisVal > 0xFF) && ((uint16_t)MaxAxisVal < 0xFF)) ? 8 : 16))), \ + HID_RI_REPORT_SIZE(8, ((((MinAxisVal >= -0xFF) && (MaxAxisVal <= 0xFF)) ? 8 : 16))), \ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE), \ HID_RI_END_COLLECTION(0), \ HID_RI_USAGE_PAGE(8, 0x09), \ @@ -478,18 +476,18 @@ HID_RI_PHYSICAL_MINIMUM(16, MinPhysicalVal), \ HID_RI_PHYSICAL_MAXIMUM(16, MaxPhysicalVal), \ HID_RI_REPORT_COUNT(8, 0x02), \ - HID_RI_REPORT_SIZE(8, (((((uint16_t)MinAxisVal > 0xFF) && ((uint16_t)MaxAxisVal < 0xFF)) ? 8 : 16))), \ + HID_RI_REPORT_SIZE(8, ((((MinAxisVal >= -0xFF) && (MaxAxisVal <= 0xFF)) ? 8 : 16))), \ HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | (AbsoluteCoords ? HID_IOF_ABSOLUTE : HID_IOF_RELATIVE)), \ HID_RI_END_COLLECTION(0), \ HID_RI_END_COLLECTION(0) /** \hideinitializer * A list of HID report item array elements that describe a typical Vendor Defined byte array HID report descriptor, - * used for transporting abitrary data between the USB host and device via HID reports. The resulting report should be + * used for transporting arbitrary data between the USB host and device via HID reports. The resulting report should be * a uint8_t byte array of the specified length in both Device to Host (IN) and Host to Device (OUT) directions. * * \param[in] VendorPageNum Vendor Defined HID Usage Page index, ranging from 0x00 to 0xFF. - * \param[in] CollectionUsage Vendor Usage for the encompasing report IN and OUT collection, ranging from 0x00 to 0xFF. + * \param[in] CollectionUsage Vendor Usage for the encompassing report IN and OUT collection, ranging from 0x00 to 0xFF. * \param[in] DataINUsage Vendor Usage for the IN report data, ranging from 0x00 to 0xFF. * \param[in] DataOUTUsage Vendor Usage for the OUT report data, ranging from 0x00 to 0xFF. * \param[in] NumBytes Length of the data IN and OUT reports. @@ -583,7 +581,7 @@ uint8_t HIDReportType; /**< Type of HID report, set to \ref HID_DTYPE_Report. */ uint16_t HIDReportLength; /**< Length of the associated HID report descriptor, in bytes. */ - } USB_HID_Descriptor_HID_t; + } ATTR_PACKED USB_HID_Descriptor_HID_t; /** \brief HID class-specific HID Descriptor (USB-IF naming conventions). * @@ -607,7 +605,7 @@ uint8_t bDescriptorType2; /**< Type of HID report, set to \ref HID_DTYPE_Report. */ uint16_t wDescriptorLength; /**< Length of the associated HID report descriptor, in bytes. */ - } USB_HID_StdDescriptor_HID_t; + } ATTR_PACKED USB_HID_StdDescriptor_HID_t; /** \brief Standard HID Boot Protocol Mouse Report. * @@ -618,7 +616,7 @@ uint8_t Button; /**< Button mask for currently pressed buttons in the mouse. */ int8_t X; /**< Current delta X movement of the mouse. */ int8_t Y; /**< Current delta Y movement on the mouse. */ - } USB_MouseReport_Data_t; + } ATTR_PACKED USB_MouseReport_Data_t; /** \brief Standard HID Boot Protocol Keyboard Report. * @@ -631,7 +629,7 @@ */ uint8_t Reserved; /**< Reserved for OEM use, always set to 0. */ uint8_t KeyCode[6]; /**< Key codes of the currently pressed keys. */ - } USB_KeyboardReport_Data_t; + } ATTR_PACKED USB_KeyboardReport_Data_t; /** Type define for the data type used to store HID report descriptor elements. */ typedef uint8_t USB_Descriptor_HIDReport_Datatype_t;