Lines Matching defs:fsg_common
293 struct fsg_common { struct
294 struct usb_gadget *gadget;
295 struct fsg_dev *fsg, *new_fsg;
297 struct usb_ep *ep0; /* Copy of gadget->ep0 */
298 struct usb_request *ep0req; /* Copy of cdev->req */
299 unsigned int ep0_req_tag;
301 struct fsg_buffhd *next_buffhd_to_fill;
302 struct fsg_buffhd *next_buffhd_to_drain;
303 struct fsg_buffhd buffhds[FSG_NUM_BUFFERS];
305 int cmnd_size;
306 u8 cmnd[MAX_COMMAND_SIZE];
308 unsigned int nluns;
309 unsigned int lun;
310 struct fsg_lun luns[FSG_MAX_LUNS];
312 unsigned int bulk_out_maxpacket;
313 enum fsg_state state; /* For exception handling */
314 unsigned int exception_req_tag;
316 enum data_direction data_dir;
317 u32 data_size;
318 u32 data_size_from_cmnd;
319 u32 tag;
320 u32 residue;
321 u32 usb_amount_left;
322 u32 usb_trb_size; /* usb transfer size */
324 unsigned int can_stall:1;
325 unsigned int free_storage_on_release:1;
326 unsigned int phase_error:1;
327 unsigned int short_packet_received:1;
328 unsigned int bad_lun_okay:1;
329 unsigned int running:1;
331 int thread_wakeup_needed;
332 struct completion thread_notifier;
333 struct task_struct *thread_task;
336 const struct fsg_operations *ops;
338 void *private_data;
340 const char *vendor_name; /* 8 characters or less */
341 const char *product_name; /* 16 characters or less */
342 u16 release;
346 char inquiry_string[8 + 16 + 4 + 1];
348 struct kref ref;
2817 struct fsg_common *fsg_common; in fsg_add() local