Robert P. J. Day | dda43a0 | 2008-03-07 13:45:32 -0500 | [diff] [blame] | 1 | #ifndef __LINUX_USB_IOWARRIOR_H |
| 2 | #define __LINUX_USB_IOWARRIOR_H |
Greg Kroah-Hartman | 946b960 | 2007-02-14 13:40:14 -0800 | [diff] [blame] | 3 | |
| 4 | #define CODEMERCS_MAGIC_NUMBER 0xC0 /* like COde Mercenaries */ |
| 5 | |
| 6 | /* Define the ioctl commands for reading and writing data */ |
| 7 | #define IOW_WRITE _IOW(CODEMERCS_MAGIC_NUMBER, 1, __u8 *) |
| 8 | #define IOW_READ _IOW(CODEMERCS_MAGIC_NUMBER, 2, __u8 *) |
| 9 | |
| 10 | /* |
| 11 | A struct for available device info which is read |
| 12 | with the ioctl IOW_GETINFO. |
| 13 | To be compatible with 2.4 userspace which didn't have an easy way to get |
| 14 | this information. |
| 15 | */ |
| 16 | struct iowarrior_info { |
Greg Kroah-Hartman | 41dceed | 2008-01-30 15:21:33 -0800 | [diff] [blame] | 17 | /* vendor id : supposed to be USB_VENDOR_ID_CODEMERCS in all cases */ |
| 18 | __u32 vendor; |
| 19 | /* product id : depends on type of chip (USB_DEVICE_ID_CODEMERCS_X) */ |
| 20 | __u32 product; |
| 21 | /* the serial number of our chip (if a serial-number is not available |
| 22 | * this is empty string) */ |
| 23 | __u8 serial[9]; |
| 24 | /* revision number of the chip */ |
| 25 | __u32 revision; |
| 26 | /* USB-speed of the device (0=UNKNOWN, 1=LOW, 2=FULL 3=HIGH) */ |
| 27 | __u32 speed; |
| 28 | /* power consumption of the device in mA */ |
| 29 | __u32 power; |
| 30 | /* the number of the endpoint */ |
| 31 | __u32 if_num; |
| 32 | /* size of the data-packets on this interface */ |
| 33 | __u32 report_size; |
Greg Kroah-Hartman | 946b960 | 2007-02-14 13:40:14 -0800 | [diff] [blame] | 34 | }; |
| 35 | |
| 36 | /* |
| 37 | Get some device-information (product-id , serial-number etc.) |
| 38 | in order to identify a chip. |
| 39 | */ |
| 40 | #define IOW_GETINFO _IOR(CODEMERCS_MAGIC_NUMBER, 3, struct iowarrior_info) |
| 41 | |
Robert P. J. Day | dda43a0 | 2008-03-07 13:45:32 -0500 | [diff] [blame] | 42 | #endif /* __LINUX_USB_IOWARRIOR_H */ |