usb: dwc3: gadget: prepare TRBs on update transfers too
authorFelipe Balbi <felipe.balbi@linux.intel.com>
Thu, 12 May 2016 11:08:34 +0000 (14:08 +0300)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Mon, 20 Jun 2016 09:30:05 +0000 (12:30 +0300)
commitc4233573f6ee611033faa9116fc7003775a450b9
tree1ddc5339f9358397fdbfaf02dc71c3615dddc9b6
parent7f370ed0cfe9aa1520696c1c71e8a51e2c0bbcc1
usb: dwc3: gadget: prepare TRBs on update transfers too

If we're updating transfers, we can also prepare as
many TRBs as we can fit in the ring. Let's start
doing that.

This patch 'solves' a limitation of how many TRBs we
can prepare when we're getting close the end of the
ring. Instead driver to prepare only up to end of
the ring, we check if we have space to wrap around
the ring properly.

Note that this only happens when our enqueue and
dequeue pointers are equal (which is the case for
bulk endpoints after an XferComplete event).

Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/dwc3/gadget.c