1
2
3
4
5
6
7 #ifndef __G_ZERO_H
8 #define __G_ZERO_H
9
10 #define GZERO_BULK_BUFLEN 4096
11 #define GZERO_QLEN 32
12 #define GZERO_ISOC_INTERVAL 4
13 #define GZERO_ISOC_MAXPACKET 1024
14 #define GZERO_SS_BULK_QLEN 1
15 #define GZERO_SS_ISO_QLEN 8
16
17 struct usb_zero_options {
18 unsigned pattern;
19 unsigned isoc_interval;
20 unsigned isoc_maxpacket;
21 unsigned isoc_mult;
22 unsigned isoc_maxburst;
23 unsigned bulk_buflen;
24 unsigned qlen;
25 unsigned ss_bulk_qlen;
26 unsigned ss_iso_qlen;
27 };
28
29 struct f_ss_opts {
30 struct usb_function_instance func_inst;
31 unsigned pattern;
32 unsigned isoc_interval;
33 unsigned isoc_maxpacket;
34 unsigned isoc_mult;
35 unsigned isoc_maxburst;
36 unsigned bulk_buflen;
37 unsigned bulk_qlen;
38 unsigned iso_qlen;
39
40
41
42
43
44
45
46 struct mutex lock;
47 int refcnt;
48 };
49
50 struct f_lb_opts {
51 struct usb_function_instance func_inst;
52 unsigned bulk_buflen;
53 unsigned qlen;
54
55
56
57
58
59
60
61 struct mutex lock;
62 int refcnt;
63 };
64
65 void lb_modexit(void);
66 int lb_modinit(void);
67
68
69 void disable_endpoints(struct usb_composite_dev *cdev,
70 struct usb_ep *in, struct usb_ep *out,
71 struct usb_ep *iso_in, struct usb_ep *iso_out);
72
73 #endif