• David Brownell's avatar
    [PATCH] USB gadget: net2280 controller updates · 6b41272d
    David Brownell authored
    A variety of fixes:
    
        - Resolves some problems with DMA chaining.  It should stream
          a lot better now; but not all the funky cases are handled yet.
    
        - Now "use_dma_chaining" is a module parameter not a #define.
          It also defaults to false.  Some gadget drivers will work fine
          with this enabled, getting some IRQ reduction and increased
          I/O parallelism (given deep I/O queues); others won't.
    
        - Handle isochronous transfers (from Mark Huang at Broadcom)
    
        - Some of the chiprev 0100 workarounds weren't quite right.
          Neither were buffer allocations on dma-incoherent systems.
    
        - Handle bulk endpoint halts better, for file_storage gadget driver.
    
        - Handle the hardware device status bits better:
            * selfpowered by default, clearable with the API;
            * remote wakeup disabled by default, host must enable it.
    
        - Fix a shutdown problem seen in some statically linked configs.
    
    Needed to use the new file_storage gadget without disabling DMA.
    6b41272d
net2280.c 75.6 KB