add support for remaining device modes
[project/usbmode.git] / switch.h
1 #ifndef __USBMODE_SWITCH_H
2 #define __USBMODE_SWITCH_H
3
4 #include <libubox/blobmsg.h>
5 #include <libusb.h>
6
7 struct usbdev_data {
8         struct libusb_device_descriptor desc;
9         struct libusb_config_descriptor *config;
10         libusb_device_handle *devh;
11         struct blob_attr *info;
12         int interface;
13         int msg_endpoint;
14         int response_endpoint;
15         int release_delay;
16         bool need_response;
17
18         char idstr[10];
19         char mfg[128], prod[128], serial[128];
20 };
21
22 extern char **messages;
23 extern int *message_len;
24 extern int n_messages;
25 extern struct libusb_context *usb;
26
27 void handle_switch(struct usbdev_data *data);
28
29 #endif