usb: add Freescale QE/CPM USB peripheral controller driver
[linux-2.6] / drivers / usb / gadget / g_zero.h
1 /*
2  * This header declares the utility functions used by "Gadget Zero", plus
3  * interfaces to its two single-configuration function drivers.
4  */
5
6 #ifndef __G_ZERO_H
7 #define __G_ZERO_H
8
9 #include <linux/usb/composite.h>
10
11 /* global state */
12 extern unsigned buflen;
13 extern const struct usb_descriptor_header *otg_desc[];
14
15 /* common utilities */
16 struct usb_request *alloc_ep_req(struct usb_ep *ep);
17 void free_ep_req(struct usb_ep *ep, struct usb_request *req);
18 void disable_endpoints(struct usb_composite_dev *cdev,
19                 struct usb_ep *in, struct usb_ep *out);
20
21 /* configuration-specific linkup */
22 int sourcesink_add(struct usb_composite_dev *cdev);
23 int loopback_add(struct usb_composite_dev *cdev);
24
25 #endif /* __G_ZERO_H */