usb: dwc3: gadget: add a per-endpoint request queue lock
[cascardo/linux.git] / drivers / usb / dwc3 / core.h
index 94b9fd2..484bb5d 100644 (file)
@@ -482,6 +482,7 @@ struct dwc3_event_buffer {
  * @endpoint: usb endpoint
  * @pending_list: list of pending requests for this endpoint
  * @started_list: list of started requests on this endpoint
+ * @lock: spinlock for endpoint request queue traversal
  * @regs: pointer to first endpoint register
  * @trb_pool: array of transaction buffers
  * @trb_pool_dma: dma address of @trb_pool
@@ -504,6 +505,7 @@ struct dwc3_ep {
        struct list_head        pending_list;
        struct list_head        started_list;
 
+       spinlock_t              lock;
        void __iomem            *regs;
 
        struct dwc3_trb         *trb_pool;