cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

hidraw.h (2008B)


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