15fd54aceSGreg Kroah-Hartman // SPDX-License-Identifier: GPL-2.0+ 21da177e4SLinus Torvalds /*****************************************************************************/ 31da177e4SLinus Torvalds 41da177e4SLinus Torvalds /* 51da177e4SLinus Torvalds * usbdevice_fs.h -- USB device file system. 61da177e4SLinus Torvalds * 71da177e4SLinus Torvalds * Copyright (C) 2000 81da177e4SLinus Torvalds * Thomas Sailer ([email protected]) 91da177e4SLinus Torvalds * 101da177e4SLinus Torvalds * This program is free software; you can redistribute it and/or modify 111da177e4SLinus Torvalds * it under the terms of the GNU General Public License as published by 121da177e4SLinus Torvalds * the Free Software Foundation; either version 2 of the License, or 131da177e4SLinus Torvalds * (at your option) any later version. 141da177e4SLinus Torvalds * 151da177e4SLinus Torvalds * This program is distributed in the hope that it will be useful, 161da177e4SLinus Torvalds * but WITHOUT ANY WARRANTY; without even the implied warranty of 171da177e4SLinus Torvalds * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 181da177e4SLinus Torvalds * GNU General Public License for more details. 191da177e4SLinus Torvalds * 201da177e4SLinus Torvalds * You should have received a copy of the GNU General Public License 211da177e4SLinus Torvalds * along with this program; if not, write to the Free Software 221da177e4SLinus Torvalds * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 231da177e4SLinus Torvalds * 241da177e4SLinus Torvalds * History: 251da177e4SLinus Torvalds * 0.1 04.01.2000 Created 261da177e4SLinus Torvalds */ 271da177e4SLinus Torvalds 281da177e4SLinus Torvalds /*****************************************************************************/ 291da177e4SLinus Torvalds #ifndef _LINUX_USBDEVICE_FS_H 301da177e4SLinus Torvalds #define _LINUX_USBDEVICE_FS_H 311da177e4SLinus Torvalds 32607ca46eSDavid Howells #include <uapi/linux/usbdevice_fs.h> 331da177e4SLinus Torvalds 341da177e4SLinus Torvalds #ifdef CONFIG_COMPAT 35ce441594SHarald Welte #include <linux/compat.h> 36637e8a60SArnd Bergmann 37637e8a60SArnd Bergmann struct usbdevfs_ctrltransfer32 { 38637e8a60SArnd Bergmann u8 bRequestType; 39637e8a60SArnd Bergmann u8 bRequest; 40637e8a60SArnd Bergmann u16 wValue; 41637e8a60SArnd Bergmann u16 wIndex; 42637e8a60SArnd Bergmann u16 wLength; 43637e8a60SArnd Bergmann u32 timeout; /* in milliseconds */ 44637e8a60SArnd Bergmann compat_caddr_t data; 45637e8a60SArnd Bergmann }; 46637e8a60SArnd Bergmann 47637e8a60SArnd Bergmann struct usbdevfs_bulktransfer32 { 48637e8a60SArnd Bergmann compat_uint_t ep; 49637e8a60SArnd Bergmann compat_uint_t len; 50637e8a60SArnd Bergmann compat_uint_t timeout; /* in milliseconds */ 51637e8a60SArnd Bergmann compat_caddr_t data; 52637e8a60SArnd Bergmann }; 53637e8a60SArnd Bergmann 54637e8a60SArnd Bergmann struct usbdevfs_disconnectsignal32 { 55637e8a60SArnd Bergmann compat_int_t signr; 56637e8a60SArnd Bergmann compat_caddr_t context; 57637e8a60SArnd Bergmann }; 58637e8a60SArnd Bergmann 591da177e4SLinus Torvalds struct usbdevfs_urb32 { 601da177e4SLinus Torvalds unsigned char type; 611da177e4SLinus Torvalds unsigned char endpoint; 621da177e4SLinus Torvalds compat_int_t status; 631da177e4SLinus Torvalds compat_uint_t flags; 641da177e4SLinus Torvalds compat_caddr_t buffer; 651da177e4SLinus Torvalds compat_int_t buffer_length; 661da177e4SLinus Torvalds compat_int_t actual_length; 671da177e4SLinus Torvalds compat_int_t start_frame; 681da177e4SLinus Torvalds compat_int_t number_of_packets; 691da177e4SLinus Torvalds compat_int_t error_count; 701da177e4SLinus Torvalds compat_uint_t signr; 711da177e4SLinus Torvalds compat_caddr_t usercontext; /* unused */ 72*6bc3f397SGustavo A. R. Silva struct usbdevfs_iso_packet_desc iso_frame_desc[]; 731da177e4SLinus Torvalds }; 74c36fc889SPete Zaitcev 75c36fc889SPete Zaitcev struct usbdevfs_ioctl32 { 76c36fc889SPete Zaitcev s32 ifno; 77c36fc889SPete Zaitcev s32 ioctl_code; 78c36fc889SPete Zaitcev compat_caddr_t data; 79c36fc889SPete Zaitcev }; 801da177e4SLinus Torvalds #endif 811da177e4SLinus Torvalds #endif /* _LINUX_USBDEVICE_FS_H */ 82