1f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner/**************************************************************************** 2f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner **************************************************************************** 3f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner *** 4f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner *** This header was automatically generated from a Linux kernel header 5f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner *** of the same name, to make information necessary for userspace to 6f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner *** call into the kernel available to libc. It contains only constants, 7f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner *** structures, and macros generated from the original header, and thus, 8f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner *** contains no copyrightable information. 9f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner *** 10f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner **************************************************************************** 11f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner ****************************************************************************/ 12f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#ifndef _LINUX_USBDEVICE_FS_H 13f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define _LINUX_USBDEVICE_FS_H 14f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 15f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#include <linux/types.h> 16f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 17f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVICE_SUPER_MAGIC 0x9fa2 18f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 19f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turnerstruct usbdevfs_ctrltransfer { 20f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner __u8 bRequestType; 21f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner __u8 bRequest; 22f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner __u16 wValue; 23f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner __u16 wIndex; 24f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner __u16 wLength; 25f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner __u32 timeout; 26f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner void __user *data; 27f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner}; 28f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 29f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turnerstruct usbdevfs_bulktransfer { 30f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int ep; 31f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int len; 32f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int timeout; 33f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner void __user *data; 34f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner}; 35f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 36f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turnerstruct usbdevfs_setinterface { 37f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int interface; 38f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int altsetting; 39f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner}; 40f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 41f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turnerstruct usbdevfs_disconnectsignal { 42f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int signr; 43f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner void __user *context; 44f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner}; 45f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 46f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_MAXDRIVERNAME 255 47f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 48f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turnerstruct usbdevfs_getdriver { 49f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int interface; 50f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner char driver[USBDEVFS_MAXDRIVERNAME + 1]; 51f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner}; 52f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 53f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turnerstruct usbdevfs_connectinfo { 54f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int devnum; 55f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned char slow; 56f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner}; 57f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 58f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_URB_SHORT_NOT_OK 1 59f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_URB_ISO_ASAP 2 60f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 61f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_URB_TYPE_ISO 0 62f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_URB_TYPE_INTERRUPT 1 63f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_URB_TYPE_CONTROL 2 64f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_URB_TYPE_BULK 3 65f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 66f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turnerstruct usbdevfs_iso_packet_desc { 67f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int length; 68f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int actual_length; 69f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int status; 70f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner}; 71f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 72f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turnerstruct usbdevfs_urb { 73f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned char type; 74f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned char endpoint; 75f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner int status; 76f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int flags; 77f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner void __user *buffer; 78f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner int buffer_length; 79f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner int actual_length; 80f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner int start_frame; 81f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner int number_of_packets; 82f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner int error_count; 83f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner unsigned int signr; 84f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner void *usercontext; 85f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner struct usbdevfs_iso_packet_desc iso_frame_desc[0]; 86f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner}; 87f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 88f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turnerstruct usbdevfs_ioctl { 89f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner int ifno; 90f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner int ioctl_code; 91f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner void __user *data; 92f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner}; 93f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 94f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turnerstruct usbdevfs_hub_portinfo { 95f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner char nports; 96f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner char port [127]; 97f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner}; 98f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner 99f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_CONTROL _IOWR('U', 0, struct usbdevfs_ctrltransfer) 100f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_BULK _IOWR('U', 2, struct usbdevfs_bulktransfer) 101f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_RESETEP _IOR('U', 3, unsigned int) 102f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_SETINTERFACE _IOR('U', 4, struct usbdevfs_setinterface) 103f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_SETCONFIGURATION _IOR('U', 5, unsigned int) 104f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_GETDRIVER _IOW('U', 8, struct usbdevfs_getdriver) 105f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_SUBMITURB _IOR('U', 10, struct usbdevfs_urb) 106f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_SUBMITURB32 _IOR('U', 10, struct usbdevfs_urb32) 107f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_DISCARDURB _IO('U', 11) 108f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_REAPURB _IOW('U', 12, void *) 109f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_REAPURB32 _IOW('U', 12, u32) 110f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_REAPURBNDELAY _IOW('U', 13, void *) 111f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_REAPURBNDELAY32 _IOW('U', 13, u32) 112f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_DISCSIGNAL _IOR('U', 14, struct usbdevfs_disconnectsignal) 113f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_CLAIMINTERFACE _IOR('U', 15, unsigned int) 114f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_RELEASEINTERFACE _IOR('U', 16, unsigned int) 115f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_CONNECTINFO _IOW('U', 17, struct usbdevfs_connectinfo) 116f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_IOCTL _IOWR('U', 18, struct usbdevfs_ioctl) 117f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_IOCTL32 _IOWR('U', 18, struct usbdevfs_ioctl32) 118f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_HUB_PORTINFO _IOR('U', 19, struct usbdevfs_hub_portinfo) 119f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_RESET _IO('U', 20) 120f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_CLEAR_HALT _IOR('U', 21, unsigned int) 121f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_DISCONNECT _IO('U', 22) 122f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#define USBDEVFS_CONNECT _IO('U', 23) 123f13db29e2847a3760e403332ea3243915e0f4bf3David 'Digit' Turner#endif 124