mmc: rtsx_pci: Enable MMC_CAP_ERASE to allow erase/discard/trim requests
[linux/fpc-iii.git] / drivers / usb / gadget / function / g_zero.h
blob492924d0d599baa18c4fd0c8d5f3d1d93aa2c8c7
1 /*
2 * This header declares the utility functions used by "Gadget Zero", plus
3 * interfaces to its two single-configuration function drivers.
4 */
6 #ifndef __G_ZERO_H
7 #define __G_ZERO_H
9 #define GZERO_BULK_BUFLEN 4096
10 #define GZERO_QLEN 32
11 #define GZERO_ISOC_INTERVAL 4
12 #define GZERO_ISOC_MAXPACKET 1024
13 #define GZERO_SS_BULK_QLEN 1
14 #define GZERO_SS_ISO_QLEN 8
16 struct usb_zero_options {
17 unsigned pattern;
18 unsigned isoc_interval;
19 unsigned isoc_maxpacket;
20 unsigned isoc_mult;
21 unsigned isoc_maxburst;
22 unsigned bulk_buflen;
23 unsigned qlen;
24 unsigned ss_bulk_qlen;
25 unsigned ss_iso_qlen;
28 struct f_ss_opts {
29 struct usb_function_instance func_inst;
30 unsigned pattern;
31 unsigned isoc_interval;
32 unsigned isoc_maxpacket;
33 unsigned isoc_mult;
34 unsigned isoc_maxburst;
35 unsigned bulk_buflen;
36 unsigned bulk_qlen;
37 unsigned iso_qlen;
40 * Read/write access to configfs attributes is handled by configfs.
42 * This is to protect the data from concurrent access by read/write
43 * and create symlink/remove symlink.
45 struct mutex lock;
46 int refcnt;
49 struct f_lb_opts {
50 struct usb_function_instance func_inst;
51 unsigned bulk_buflen;
52 unsigned qlen;
55 * Read/write access to configfs attributes is handled by configfs.
57 * This is to protect the data from concurrent access by read/write
58 * and create symlink/remove symlink.
60 struct mutex lock;
61 int refcnt;
64 void lb_modexit(void);
65 int lb_modinit(void);
67 /* common utilities */
68 void disable_endpoints(struct usb_composite_dev *cdev,
69 struct usb_ep *in, struct usb_ep *out,
70 struct usb_ep *iso_in, struct usb_ep *iso_out);
72 #endif /* __G_ZERO_H */