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