forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
kernel/drivers/usb/gadget/udc/atmel_usba_udc.h
....@@ -290,6 +290,12 @@
290290 #endif
291291 };
292292
293
+struct usba_ep_config {
294
+ u8 nr_banks;
295
+ unsigned int can_dma:1;
296
+ unsigned int can_isoc:1;
297
+};
298
+
293299 struct usba_request {
294300 struct usb_request req;
295301 struct list_head queue;
....@@ -305,6 +311,13 @@
305311 struct usba_udc_errata {
306312 void (*toggle_bias)(struct usba_udc *udc, int is_on);
307313 void (*pulse_bias)(struct usba_udc *udc);
314
+};
315
+
316
+struct usba_udc_config {
317
+ const struct usba_udc_errata *errata;
318
+ const struct usba_ep_config *config;
319
+ const int num_ep;
320
+ const bool ep_prealloc;
308321 };
309322
310323 struct usba_udc {
....@@ -324,13 +337,14 @@
324337 int irq;
325338 struct gpio_desc *vbus_pin;
326339 int num_ep;
327
- int configured_ep;
328340 struct usba_fifo_cfg *fifo_cfg;
329341 struct clk *pclk;
330342 struct clk *hclk;
331343 struct usba_ep *usba_ep;
332344 bool bias_pulse_needed;
333345 bool clocked;
346
+ bool suspended;
347
+ bool ep_prealloc;
334348
335349 u16 devstatus;
336350