linux/include/uapi/linux/hidraw.h
<<
>>
Prefs
   1/*
   2 *  Copyright (c) 2007 Jiri Kosina
   3 */
   4/*
   5 * This program is free software; you can redistribute it and/or modify it
   6 * under the terms and conditions of the GNU General Public License,
   7 * version 2, as published by the Free Software Foundation.
   8 *
   9 * You should have received a copy of the GNU General Public License along with
  10 * this program; if not, write to the Free Software Foundation, Inc.,
  11 * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
  12 */
  13#ifndef _UAPI_HIDRAW_H
  14#define _UAPI_HIDRAW_H
  15
  16
  17
  18#include <linux/hid.h>
  19#include <linux/types.h>
  20
  21struct hidraw_report_descriptor {
  22        __u32 size;
  23        __u8 value[HID_MAX_DESCRIPTOR_SIZE];
  24};
  25
  26struct hidraw_devinfo {
  27        __u32 bustype;
  28        __s16 vendor;
  29        __s16 product;
  30};
  31
  32/* ioctl interface */
  33#define HIDIOCGRDESCSIZE        _IOR('H', 0x01, int)
  34#define HIDIOCGRDESC            _IOR('H', 0x02, struct hidraw_report_descriptor)
  35#define HIDIOCGRAWINFO          _IOR('H', 0x03, struct hidraw_devinfo)
  36#define HIDIOCGRAWNAME(len)     _IOC(_IOC_READ, 'H', 0x04, len)
  37#define HIDIOCGRAWPHYS(len)     _IOC(_IOC_READ, 'H', 0x05, len)
  38/* The first byte of SFEATURE and GFEATURE is the report number */
  39#define HIDIOCSFEATURE(len)    _IOC(_IOC_WRITE|_IOC_READ, 'H', 0x06, len)
  40#define HIDIOCGFEATURE(len)    _IOC(_IOC_WRITE|_IOC_READ, 'H', 0x07, len)
  41
  42#define HIDRAW_FIRST_MINOR 0
  43#define HIDRAW_MAX_DEVICES 64
  44/* number of reports to buffer */
  45#define HIDRAW_BUFFER_SIZE 64
  46
  47
  48/* kernel-only API declarations */
  49
  50#endif /* _UAPI_HIDRAW_H */
  51