Hi Doug, On Thu, Nov 05, 2015 at 04:32:46PM -0800, Doug Anderson wrote: > Hi, > > On Thu, Nov 5, 2015 at 12:41 AM, Gregory Herrero > <gregory.herrero@xxxxxxxxx> wrote: > > Hi, > > > > This patchset contains bug fixes for host descriptor dma mode. > > > > Descriptor dma mode can't be used as the default mode since controller > > does not support split transfers in this mode. > > So we add a new configuration parameter which allows descriptor dma mode > > to be enabled for full-speed devices only. > > > > All patches are verified on dwc2 v3.0a with dedicated fifos and our > > main test target was usb audio devices. > > > > All patches are based on Felipe's testing/next branch. > > > > Regards, > > Gregory > > > > History: > > v2: > > - Use dma cache in "usb: dwc2: host: use kmem cache to allocate descriptors" > > and replace usage of deprecated GFP_DMA32 flag. > > - Remove "usb: dwc2: host: free status_buf on hcd de-init". > > > > v1: > > - Fix compilation error introduced by: > > "usb: dwc2: host: avoid usage of dma_alloc_coherent with irqs disabled" > > - Fix warning introduced by: > > "usb: dwc2: host: fix descriptor list address masking" > > > > Gregory Herrero (11): > > usb: dwc2: host: ensure filling of isoc desc is correctly done > > usb: dwc2: host: set active bit in isochronous descriptors > > usb: dwc2: host: rework isochronous halt path > > usb: dwc2: host: fix use of qtd after free in desc dma mode > > usb: dwc2: host: spinlock release channel > > usb: dwc2: host: add function to compare frame index > > usb: dwc2: host: program descriptor for next frame > > usb: dwc2: host: always increment available host channel during > > release > > usb: dwc2: host: process all completed urbs > > usb: dwc2: host: avoid usage of dma_alloc_coherent with irqs disabled > > usb: dwc2: host: use kmem cache to allocate descriptors > > > > Mian Yousaf Kaukab (2): > > usb: dwc2: host: enable descriptor dma for fs devices > > usb: dwc2: host: fix descriptor list address masking > > > > drivers/usb/dwc2/core.c | 37 +++++-- > > drivers/usb/dwc2/core.h | 26 +++++ > > drivers/usb/dwc2/hcd.c | 76 +++++++++++++- > > drivers/usb/dwc2/hcd.h | 19 ++++ > > drivers/usb/dwc2/hcd_ddma.c | 240 +++++++++++++++++++++++++++++++++++-------- > > drivers/usb/dwc2/hcd_intr.c | 15 ++- > > drivers/usb/dwc2/hcd_queue.c | 2 +- > > drivers/usb/dwc2/hw.h | 4 - > > drivers/usb/dwc2/platform.c | 4 + > > 9 files changed, 367 insertions(+), 56 deletions(-) > > With the previous version of this series, I could confirm that the > series didn't break things terribly (after fixing the DMA flag) and it > _sometimes_ made DMA Descriptor mode work for me (I believe it never > worked before). It was unclear why it didn't work sometimes and I > haven't had a chance to debug it yet. > > I'm not sure I can give a Tested-by for that, but I figured I'd at > least let you know the current status on my rk3288 board. > Thanks for trying. It would be interesting to see traces when you get a chance to debug it again. I didn't notice any instability with core version 3.00a. Those patches will only impact descriptor DMA mode, so there is no risk to break anything else now that DMA flag is fixed :). BR, Gregory -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html