Re: [RFC 1/1] HID: User-space I/O driver support for HID subsystem
From: David Herrmann <hidden>
Date: 2012-03-16 18:51:21
Also in:
linux-bluetooth
Hi Marcel On Fri, Mar 16, 2012 at 5:00 PM, Marcel Holtmann [off-list ref] wrote:
Hi David, <snip>quoted
new file mode 100644 index 0000000..1a7df0d--- /dev/null +++ b/include/linux/uhid.h@@ -0,0 +1,71 @@ +#ifndef __UHID_H_ +#define __UHID_H_ + +/* + * User-space I/O driver support for HID subsystem + * Copyright (c) 2012 David Herrmann + */ + +/* + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + */ + +#include <linux/input.h> +#include <linux/types.h> + +enum uhid_event_type { + UHID_CREATE, + UHID_DESTROY, + UHID_START, + UHID_STOP, + UHID_OPEN, + UHID_CLOSE, + UHID_OUTPUT, + UHID_OUTPUT_EV, + UHID_INPUT, +}; + +struct uhid_create_req { + __u8 __user name[128]; + __u8 __user *rd_data; + __u16 rd_size; +we need the bus here as well. With HIDP it was implicit, but here it is no longer implicit.
Uh, yeah, I will add that, thanks. I also need to find a proper way to get a hid->dev.parent pointer.
quoted
+ __u16 vendor; + __u16 product; + __u16 version; + __u8 country;What are we using country for these days?
I copied it from HIDP. If we don't need this, I can remove it. USBHID doesn't use it as far as I can see.
quoted
+}; + +#define UHID_DATA_MAX 4096 + +enum uhid_report_type { + UHID_FEATURE_REPORT, + UHID_OUTPUT_REPORT, +}; + +struct uhid_data_req { + __u8 data[UHID_DATA_MAX]; + __u16 size; + __u8 rtype; +}; + +struct uhid_data_ev_req { + __u16 type; + __u16 code; + __s32 value; +}; + +struct uhid_event { + __u32 type; + + union { + struct uhid_create_req create; + struct uhid_data_req data; + struct input_event data_ev; + } u; +}; + +#endif /* __UHID_H_ */Regards Marcel
Thanks David -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html