1704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner/**************************************************************************** 2704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner **************************************************************************** 3704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner *** 4704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner *** This header was automatically generated from a Linux kernel header 5704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner *** of the same name, to make information necessary for userspace to 6704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner *** call into the kernel available to libc. It contains only constants, 7704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner *** structures, and macros generated from the original header, and thus, 8704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner *** contains no copyrightable information. 9704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner *** 10704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner **************************************************************************** 11704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner ****************************************************************************/ 12704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#ifndef _LINUX_USBDEVICE_FS_H 13704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define _LINUX_USBDEVICE_FS_H 14704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 15704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#include <linux/types.h> 16704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 17704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVICE_SUPER_MAGIC 0x9fa2 18704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 19704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turnerstruct usbdevfs_ctrltransfer { 20704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner __u8 bRequestType; 21704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner __u8 bRequest; 22704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner __u16 wValue; 23704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner __u16 wIndex; 24704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner __u16 wLength; 25704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner __u32 timeout; 26704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner void __user *data; 27704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner}; 28704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 29704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turnerstruct usbdevfs_bulktransfer { 30704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int ep; 31704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int len; 32704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int timeout; 33704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner void __user *data; 34704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner}; 35704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 36704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turnerstruct usbdevfs_setinterface { 37704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int interface; 38704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int altsetting; 39704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner}; 40704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 41704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turnerstruct usbdevfs_disconnectsignal { 42704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int signr; 43704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner void __user *context; 44704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner}; 45704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 46704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_MAXDRIVERNAME 255 47704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 48704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turnerstruct usbdevfs_getdriver { 49704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int interface; 50704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner char driver[USBDEVFS_MAXDRIVERNAME + 1]; 51704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner}; 52704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 53704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turnerstruct usbdevfs_connectinfo { 54704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int devnum; 55704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned char slow; 56704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner}; 57704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 58704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_URB_SHORT_NOT_OK 1 59704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_URB_ISO_ASAP 2 60704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 61704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_URB_TYPE_ISO 0 62704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_URB_TYPE_INTERRUPT 1 63704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_URB_TYPE_CONTROL 2 64704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_URB_TYPE_BULK 3 65704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 66704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turnerstruct usbdevfs_iso_packet_desc { 67704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int length; 68704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int actual_length; 69704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int status; 70704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner}; 71704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 72704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turnerstruct usbdevfs_urb { 73704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned char type; 74704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned char endpoint; 75704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner int status; 76704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int flags; 77704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner void __user *buffer; 78704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner int buffer_length; 79704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner int actual_length; 80704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner int start_frame; 81704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner int number_of_packets; 82704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner int error_count; 83704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner unsigned int signr; 84704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner void *usercontext; 85704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner struct usbdevfs_iso_packet_desc iso_frame_desc[0]; 86704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner}; 87704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 88704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turnerstruct usbdevfs_ioctl { 89704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner int ifno; 90704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner int ioctl_code; 91704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner void __user *data; 92704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner}; 93704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 94704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turnerstruct usbdevfs_hub_portinfo { 95704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner char nports; 96704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner char port [127]; 97704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner}; 98704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner 99704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_CONTROL _IOWR('U', 0, struct usbdevfs_ctrltransfer) 100704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_BULK _IOWR('U', 2, struct usbdevfs_bulktransfer) 101704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_RESETEP _IOR('U', 3, unsigned int) 102704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_SETINTERFACE _IOR('U', 4, struct usbdevfs_setinterface) 103704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_SETCONFIGURATION _IOR('U', 5, unsigned int) 104704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_GETDRIVER _IOW('U', 8, struct usbdevfs_getdriver) 105704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_SUBMITURB _IOR('U', 10, struct usbdevfs_urb) 106704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_SUBMITURB32 _IOR('U', 10, struct usbdevfs_urb32) 107704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_DISCARDURB _IO('U', 11) 108704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_REAPURB _IOW('U', 12, void *) 109704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_REAPURB32 _IOW('U', 12, u32) 110704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_REAPURBNDELAY _IOW('U', 13, void *) 111704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_REAPURBNDELAY32 _IOW('U', 13, u32) 112704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_DISCSIGNAL _IOR('U', 14, struct usbdevfs_disconnectsignal) 113704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_CLAIMINTERFACE _IOR('U', 15, unsigned int) 114704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_RELEASEINTERFACE _IOR('U', 16, unsigned int) 115704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_CONNECTINFO _IOW('U', 17, struct usbdevfs_connectinfo) 116704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_IOCTL _IOWR('U', 18, struct usbdevfs_ioctl) 117704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_IOCTL32 _IOWR('U', 18, struct usbdevfs_ioctl32) 118704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_HUB_PORTINFO _IOR('U', 19, struct usbdevfs_hub_portinfo) 119704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_RESET _IO('U', 20) 120704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_CLEAR_HALT _IOR('U', 21, unsigned int) 121704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_DISCONNECT _IO('U', 22) 122704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#define USBDEVFS_CONNECT _IO('U', 23) 123704614245e9bed17f68574bc9686c02c43923292David 'Digit' Turner#endif 124