| .. | .. |
|---|
| 118 | 118 | /** |
|---|
| 119 | 119 | * struct usb_function - describes one function of a configuration |
|---|
| 120 | 120 | * @name: For diagnostics, identifies the function. |
|---|
| 121 | | - * @intf_id: Interface ID |
|---|
| 122 | 121 | * @strings: tables of strings, keyed by identifiers assigned during bind() |
|---|
| 123 | 122 | * and by language IDs provided in control requests |
|---|
| 124 | 123 | * @fs_descriptors: Table of full (or low) speed descriptors, using interface and |
|---|
| .. | .. |
|---|
| 164 | 163 | * GetStatus() request when the recipient is Interface. |
|---|
| 165 | 164 | * @func_suspend: callback to be called when |
|---|
| 166 | 165 | * SetFeature(FUNCTION_SUSPEND) is reseived |
|---|
| 167 | | - * @func_is_suspended: Tells whether the function is currently in |
|---|
| 168 | | - * Function Suspend state (used in Super Speed mode only). |
|---|
| 169 | | - * @func_wakeup_allowed: Tells whether Function Remote Wakeup has been allowed |
|---|
| 170 | | - * by the USB host (used in Super Speed mode only). |
|---|
| 171 | | - * @func_wakeup_pending: Marks that the function has issued a Function Wakeup |
|---|
| 172 | | - * while the USB bus was suspended and therefore a Function Wakeup |
|---|
| 173 | | - * notification needs to be sent once the USB bus is resumed. |
|---|
| 174 | 166 | * |
|---|
| 175 | 167 | * A single USB function uses one or more interfaces, and should in most |
|---|
| 176 | 168 | * cases support operation at both full and high speeds. Each function is |
|---|
| .. | .. |
|---|
| 198 | 190 | |
|---|
| 199 | 191 | struct usb_function { |
|---|
| 200 | 192 | const char *name; |
|---|
| 201 | | - int intf_id; |
|---|
| 202 | 193 | struct usb_gadget_strings **strings; |
|---|
| 203 | 194 | struct usb_descriptor_header **fs_descriptors; |
|---|
| 204 | 195 | struct usb_descriptor_header **hs_descriptors; |
|---|
| .. | .. |
|---|
| 242 | 233 | int (*get_status)(struct usb_function *); |
|---|
| 243 | 234 | int (*func_suspend)(struct usb_function *, |
|---|
| 244 | 235 | u8 suspend_opt); |
|---|
| 245 | | - unsigned func_is_suspended:1; |
|---|
| 246 | | - unsigned func_wakeup_allowed:1; |
|---|
| 247 | | - unsigned func_wakeup_pending:1; |
|---|
| 248 | 236 | /* private: */ |
|---|
| 249 | 237 | /* internals */ |
|---|
| 250 | 238 | struct list_head list; |
|---|
| .. | .. |
|---|
| 260 | 248 | int usb_function_activate(struct usb_function *); |
|---|
| 261 | 249 | |
|---|
| 262 | 250 | int usb_interface_id(struct usb_configuration *, struct usb_function *); |
|---|
| 263 | | -int usb_func_wakeup(struct usb_function *func); |
|---|
| 264 | | - |
|---|
| 265 | | -int usb_get_func_interface_id(struct usb_function *func); |
|---|
| 266 | 251 | |
|---|
| 267 | 252 | int config_ep_by_speed_and_alt(struct usb_gadget *g, struct usb_function *f, |
|---|
| 268 | 253 | struct usb_ep *_ep, u8 alt); |
|---|
| .. | .. |
|---|
| 452 | 437 | #define OS_STRING_IDX 0xEE |
|---|
| 453 | 438 | |
|---|
| 454 | 439 | /** |
|---|
| 455 | | - * struct usb_composite_device - represents one composite usb gadget |
|---|
| 440 | + * struct usb_composite_dev - represents one composite usb gadget |
|---|
| 456 | 441 | * @gadget: read-only, abstracts the gadget's usb peripheral controller |
|---|
| 457 | 442 | * @req: used for control responses; buffer is pre-allocated |
|---|
| 458 | 443 | * @os_desc_req: used for OS descriptors responses; buffer is pre-allocated |
|---|
| .. | .. |
|---|
| 540 | 525 | extern int usb_string_ids_n(struct usb_composite_dev *c, unsigned n); |
|---|
| 541 | 526 | |
|---|
| 542 | 527 | extern void composite_disconnect(struct usb_gadget *gadget); |
|---|
| 528 | +extern void composite_reset(struct usb_gadget *gadget); |
|---|
| 529 | + |
|---|
| 543 | 530 | extern int composite_setup(struct usb_gadget *gadget, |
|---|
| 544 | 531 | const struct usb_ctrlrequest *ctrl); |
|---|
| 545 | 532 | extern void composite_suspend(struct usb_gadget *gadget); |
|---|