summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorRakesh Bodla <rbodla@nvidia.com>2012-08-14 17:36:15 +0530
committerSimone Willett <swillett@nvidia.com>2012-08-16 13:46:29 -0700
commitd9b6490efce58b5790a7e5d02727b0aa6b357c9e (patch)
tree013e735eed3179208d0c463683fa893b1cc78ec1 /include/linux
parent23d5fe76cdc190682d1ca7cd1db0b4933631779c (diff)
USB: gadget: f_accessory: Add support for HID input devices
Bug 1026047 Signed-off-by: Mike Lockwood <lockwood@google.com> (cherry picked from commit 7a3d01af4f04950a86a18f5a439f1802d8093650) Conflicts: drivers/usb/gadget/f_accessory.c Change-Id: I30bc02a1bcf636967d56370db83578f49f0e7514 Signed-off-by: Rakesh Bodla <rbodla@nvidia.com> Reviewed-on: http://git-master/r/123342 Reviewed-by: Venkat Moganty <vmoganty@nvidia.com>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/usb/f_accessory.h50
1 files changed, 49 insertions, 1 deletions
diff --git a/include/linux/usb/f_accessory.h b/include/linux/usb/f_accessory.h
index ddb2fd0e88fb..61ebe0aabc5b 100644
--- a/include/linux/usb/f_accessory.h
+++ b/include/linux/usb/f_accessory.h
@@ -44,7 +44,7 @@
* index: 0
* data version number (16 bits little endian)
* 1 for original accessory support
- * 2 adds device to host audio support
+ * 2 adds HID and device to host audio support
*/
#define ACCESSORY_GET_PROTOCOL 51
@@ -72,6 +72,54 @@
*/
#define ACCESSORY_START 53
+/* Control request for registering a HID device.
+ * Upon registering, a unique ID is sent by the accessory in the
+ * value parameter. This ID will be used for future commands for
+ * the device
+ *
+ * requestType: USB_DIR_OUT | USB_TYPE_VENDOR
+ * request: ACCESSORY_REGISTER_HID_DEVICE
+ * value: Accessory assigned ID for the HID device
+ * index: total length of the HID report descriptor
+ * data none
+ */
+#define ACCESSORY_REGISTER_HID 54
+
+/* Control request for unregistering a HID device.
+ *
+ * requestType: USB_DIR_OUT | USB_TYPE_VENDOR
+ * request: ACCESSORY_REGISTER_HID
+ * value: Accessory assigned ID for the HID device
+ * index: 0
+ * data none
+ */
+#define ACCESSORY_UNREGISTER_HID 55
+
+/* Control request for sending the HID report descriptor.
+ * If the HID descriptor is longer than the endpoint zero max packet size,
+ * the descriptor will be sent in multiple ACCESSORY_SET_HID_REPORT_DESC
+ * commands. The data for the descriptor must be sent sequentially
+ * if multiple packets are needed.
+ *
+ * requestType: USB_DIR_OUT | USB_TYPE_VENDOR
+ * request: ACCESSORY_SET_HID_REPORT_DESC
+ * value: Accessory assigned ID for the HID device
+ * index: offset of data in descriptor
+ * (needed when HID descriptor is too big for one packet)
+ * data the HID report descriptor
+ */
+#define ACCESSORY_SET_HID_REPORT_DESC 56
+
+/* Control request for sending HID events.
+ *
+ * requestType: USB_DIR_OUT | USB_TYPE_VENDOR
+ * request: ACCESSORY_SEND_HID_EVENT
+ * value: Accessory assigned ID for the HID device
+ * index: 0
+ * data the HID report for the event
+ */
+#define ACCESSORY_SEND_HID_EVENT 57
+
/* Control request for setting the audio mode.
*
* requestType: USB_DIR_OUT | USB_TYPE_VENDOR