blob: 0aa2062d4deb9568a6d11b939767eca57f4458dc [file] [log] [blame]
Ben Cheng655a7c02013-10-16 16:09:24 -07001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _UAPI_LINUX_USBDEVICE_FS_H
20#define _UAPI_LINUX_USBDEVICE_FS_H
21#include <linux/types.h>
22#include <linux/magic.h>
23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24struct usbdevfs_ctrltransfer {
Tao Baod7db5942015-01-28 10:07:51 -080025 __u8 bRequestType;
26 __u8 bRequest;
27 __u16 wValue;
Ben Cheng655a7c02013-10-16 16:09:24 -070028/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080029 __u16 wIndex;
30 __u16 wLength;
31 __u32 timeout;
32 void __user * data;
Ben Cheng655a7c02013-10-16 16:09:24 -070033/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34};
35struct usbdevfs_bulktransfer {
Tao Baod7db5942015-01-28 10:07:51 -080036 unsigned int ep;
37 unsigned int len;
Ben Cheng655a7c02013-10-16 16:09:24 -070038/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080039 unsigned int timeout;
40 void __user * data;
Ben Cheng655a7c02013-10-16 16:09:24 -070041};
42struct usbdevfs_setinterface {
43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080044 unsigned int interface;
45 unsigned int altsetting;
Ben Cheng655a7c02013-10-16 16:09:24 -070046};
47struct usbdevfs_disconnectsignal {
48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080049 unsigned int signr;
50 void __user * context;
Ben Cheng655a7c02013-10-16 16:09:24 -070051};
52#define USBDEVFS_MAXDRIVERNAME 255
53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54struct usbdevfs_getdriver {
Tao Baod7db5942015-01-28 10:07:51 -080055 unsigned int interface;
56 char driver[USBDEVFS_MAXDRIVERNAME + 1];
Ben Cheng655a7c02013-10-16 16:09:24 -070057};
58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59struct usbdevfs_connectinfo {
Tao Baod7db5942015-01-28 10:07:51 -080060 unsigned int devnum;
61 unsigned char slow;
Ben Cheng655a7c02013-10-16 16:09:24 -070062};
63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64#define USBDEVFS_URB_SHORT_NOT_OK 0x01
65#define USBDEVFS_URB_ISO_ASAP 0x02
66#define USBDEVFS_URB_BULK_CONTINUATION 0x04
67#define USBDEVFS_URB_NO_FSBR 0x20
68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69#define USBDEVFS_URB_ZERO_PACKET 0x40
70#define USBDEVFS_URB_NO_INTERRUPT 0x80
71#define USBDEVFS_URB_TYPE_ISO 0
72#define USBDEVFS_URB_TYPE_INTERRUPT 1
73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74#define USBDEVFS_URB_TYPE_CONTROL 2
75#define USBDEVFS_URB_TYPE_BULK 3
76struct usbdevfs_iso_packet_desc {
Tao Baod7db5942015-01-28 10:07:51 -080077 unsigned int length;
Ben Cheng655a7c02013-10-16 16:09:24 -070078/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080079 unsigned int actual_length;
80 unsigned int status;
Ben Cheng655a7c02013-10-16 16:09:24 -070081};
82struct usbdevfs_urb {
83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080084 unsigned char type;
85 unsigned char endpoint;
86 int status;
87 unsigned int flags;
Ben Cheng655a7c02013-10-16 16:09:24 -070088/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080089 void __user * buffer;
90 int buffer_length;
91 int actual_length;
92 int start_frame;
Ben Cheng655a7c02013-10-16 16:09:24 -070093/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080094 union {
95 int number_of_packets;
96 unsigned int stream_id;
97 };
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070098/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -080099 int error_count;
100 unsigned int signr;
101 void __user * usercontext;
102 struct usbdevfs_iso_packet_desc iso_frame_desc[0];
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700104};
105struct usbdevfs_ioctl {
Tao Baod7db5942015-01-28 10:07:51 -0800106 int ifno;
107 int ioctl_code;
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800109 void __user * data;
Ben Cheng655a7c02013-10-16 16:09:24 -0700110};
111struct usbdevfs_hub_portinfo {
Tao Baod7db5942015-01-28 10:07:51 -0800112 char nports;
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800114 char port[127];
Ben Cheng655a7c02013-10-16 16:09:24 -0700115};
116#define USBDEVFS_CAP_ZERO_PACKET 0x01
Ben Cheng655a7c02013-10-16 16:09:24 -0700117#define USBDEVFS_CAP_BULK_CONTINUATION 0x02
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700119#define USBDEVFS_CAP_NO_PACKET_SIZE_LIM 0x04
120#define USBDEVFS_CAP_BULK_SCATTER_GATHER 0x08
121#define USBDEVFS_DISCONNECT_CLAIM_IF_DRIVER 0x01
Ben Cheng655a7c02013-10-16 16:09:24 -0700122#define USBDEVFS_DISCONNECT_CLAIM_EXCEPT_DRIVER 0x02
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700124struct usbdevfs_disconnect_claim {
Tao Baod7db5942015-01-28 10:07:51 -0800125 unsigned int interface;
126 unsigned int flags;
127 char driver[USBDEVFS_MAXDRIVERNAME + 1];
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129};
130struct usbdevfs_streams {
Tao Baod7db5942015-01-28 10:07:51 -0800131 unsigned int num_streams;
132 unsigned int num_eps;
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Tao Baod7db5942015-01-28 10:07:51 -0800134 unsigned char eps[0];
Ben Cheng655a7c02013-10-16 16:09:24 -0700135};
136#define USBDEVFS_CONTROL _IOWR('U', 0, struct usbdevfs_ctrltransfer)
137#define USBDEVFS_CONTROL32 _IOWR('U', 0, struct usbdevfs_ctrltransfer32)
138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139#define USBDEVFS_BULK _IOWR('U', 2, struct usbdevfs_bulktransfer)
140#define USBDEVFS_BULK32 _IOWR('U', 2, struct usbdevfs_bulktransfer32)
141#define USBDEVFS_RESETEP _IOR('U', 3, unsigned int)
142#define USBDEVFS_SETINTERFACE _IOR('U', 4, struct usbdevfs_setinterface)
143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144#define USBDEVFS_SETCONFIGURATION _IOR('U', 5, unsigned int)
145#define USBDEVFS_GETDRIVER _IOW('U', 8, struct usbdevfs_getdriver)
146#define USBDEVFS_SUBMITURB _IOR('U', 10, struct usbdevfs_urb)
147#define USBDEVFS_SUBMITURB32 _IOR('U', 10, struct usbdevfs_urb32)
148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149#define USBDEVFS_DISCARDURB _IO('U', 11)
150#define USBDEVFS_REAPURB _IOW('U', 12, void *)
151#define USBDEVFS_REAPURB32 _IOW('U', 12, __u32)
152#define USBDEVFS_REAPURBNDELAY _IOW('U', 13, void *)
153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154#define USBDEVFS_REAPURBNDELAY32 _IOW('U', 13, __u32)
155#define USBDEVFS_DISCSIGNAL _IOR('U', 14, struct usbdevfs_disconnectsignal)
156#define USBDEVFS_DISCSIGNAL32 _IOR('U', 14, struct usbdevfs_disconnectsignal32)
157#define USBDEVFS_CLAIMINTERFACE _IOR('U', 15, unsigned int)
158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159#define USBDEVFS_RELEASEINTERFACE _IOR('U', 16, unsigned int)
160#define USBDEVFS_CONNECTINFO _IOW('U', 17, struct usbdevfs_connectinfo)
161#define USBDEVFS_IOCTL _IOWR('U', 18, struct usbdevfs_ioctl)
162#define USBDEVFS_IOCTL32 _IOWR('U', 18, struct usbdevfs_ioctl32)
163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164#define USBDEVFS_HUB_PORTINFO _IOR('U', 19, struct usbdevfs_hub_portinfo)
165#define USBDEVFS_RESET _IO('U', 20)
166#define USBDEVFS_CLEAR_HALT _IOR('U', 21, unsigned int)
167#define USBDEVFS_DISCONNECT _IO('U', 22)
168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169#define USBDEVFS_CONNECT _IO('U', 23)
170#define USBDEVFS_CLAIM_PORT _IOR('U', 24, unsigned int)
171#define USBDEVFS_RELEASE_PORT _IOR('U', 25, unsigned int)
172#define USBDEVFS_GET_CAPABILITIES _IOR('U', 26, __u32)
173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174#define USBDEVFS_DISCONNECT_CLAIM _IOR('U', 27, struct usbdevfs_disconnect_claim)
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700175#define USBDEVFS_ALLOC_STREAMS _IOR('U', 28, struct usbdevfs_streams)
176#define USBDEVFS_FREE_STREAMS _IOR('U', 29, struct usbdevfs_streams)
Ben Cheng655a7c02013-10-16 16:09:24 -0700177#endif
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */