/* * This header declares the utility functions used by "Gadget Zero", plus * interfaces to its two single-configuration function drivers. */ #ifndef __G_ZERO_H #define __G_ZERO_H struct usb_zero_options { unsigned pattern; unsigned isoc_interval; unsigned isoc_maxpacket; unsigned isoc_mult; unsigned isoc_maxburst; unsigned bulk_buflen; unsigned qlen; }; struct f_ss_opts { struct usb_function_instance func_inst; unsigned pattern; unsigned isoc_interval; unsigned isoc_maxpacket; unsigned isoc_mult; unsigned isoc_maxburst; unsigned bulk_buflen; }; struct f_lb_opts { struct usb_function_instance func_inst; unsigned bulk_buflen; unsigned qlen; }; void lb_modexit(void); int lb_modinit(void); /* common utilities */ struct usb_request *alloc_ep_req(struct usb_ep *ep, int len); void free_ep_req(struct usb_ep *ep, struct usb_request *req); void disable_endpoints(struct usb_composite_dev *cdev, struct usb_ep *in, struct usb_ep *out, struct usb_ep *iso_in, struct usb_ep *iso_out); #endif /* __G_ZERO_H */