diff options
Diffstat (limited to 'include/linux/hidraw.h')
| -rw-r--r-- | include/linux/hidraw.h | 42 | 
1 files changed, 6 insertions, 36 deletions
diff --git a/include/linux/hidraw.h b/include/linux/hidraw.h index dd8d6926917..ddf52612eed 100644 --- a/include/linux/hidraw.h +++ b/include/linux/hidraw.h @@ -1,10 +1,6 @@ -#ifndef _HIDRAW_H -#define _HIDRAW_H -  /*   *  Copyright (c) 2007 Jiri Kosina   */ -  /*   * This program is free software; you can redistribute it and/or modify it   * under the terms and conditions of the GNU General Public License, @@ -14,36 +10,11 @@   * this program; if not, write to the Free Software Foundation, Inc.,   * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.   */ +#ifndef _HIDRAW_H +#define _HIDRAW_H -#include <linux/hid.h> -#include <linux/types.h> - -struct hidraw_report_descriptor { -	__u32 size; -	__u8 value[HID_MAX_DESCRIPTOR_SIZE]; -}; - -struct hidraw_devinfo { -	__u32 bustype; -	__s16 vendor; -	__s16 product; -}; - -/* ioctl interface */ -#define HIDIOCGRDESCSIZE	_IOR('H', 0x01, int) -#define HIDIOCGRDESC		_IOR('H', 0x02, struct hidraw_report_descriptor) -#define HIDIOCGRAWINFO		_IOR('H', 0x03, struct hidraw_devinfo) -#define HIDIOCGRAWNAME(len)     _IOC(_IOC_READ, 'H', 0x04, len) -#define HIDIOCGRAWPHYS(len)     _IOC(_IOC_READ, 'H', 0x05, len) - -#define HIDRAW_FIRST_MINOR 0 -#define HIDRAW_MAX_DEVICES 64 -/* number of reports to buffer */ -#define HIDRAW_BUFFER_SIZE 64 - +#include <uapi/linux/hidraw.h> -/* kernel-only API declarations */ -#ifdef __KERNEL__  struct hidraw {  	unsigned int minor; @@ -52,6 +23,7 @@ struct hidraw {  	wait_queue_head_t wait;  	struct hid_device *hid;  	struct device *dev; +	spinlock_t list_lock;  	struct list_head list;  }; @@ -73,17 +45,15 @@ struct hidraw_list {  #ifdef CONFIG_HIDRAW  int hidraw_init(void);  void hidraw_exit(void); -void hidraw_report_event(struct hid_device *, u8 *, int); +int hidraw_report_event(struct hid_device *, u8 *, int);  int hidraw_connect(struct hid_device *);  void hidraw_disconnect(struct hid_device *);  #else  static inline int hidraw_init(void) { return 0; }  static inline void hidraw_exit(void) { } -static inline void hidraw_report_event(struct hid_device *hid, u8 *data, int len) { } +static inline int hidraw_report_event(struct hid_device *hid, u8 *data, int len) { return 0; }  static inline int hidraw_connect(struct hid_device *hid) { return -1; }  static inline void hidraw_disconnect(struct hid_device *hid) { }  #endif  #endif - -#endif  | 
