1. 17 12月, 2010 5 次提交
    • A
      USB: gadget: update ci13xxx to work with g_ether · d9bb9c18
      Artem Leonenko 提交于
      There is one nasty scenario when CI13xxx driver fails:
             a) two or more rx requests are queued (g_ether does that)
             b) rx request completed, interrupt fires and ci13xxx dequeues rq
             c) request complete() callback gets called and in turn it calls ep_queue()
                     c1) in ep_queue() request gets added to the TAIL of the rx queue list
             d) ep gets primed with rq from (b)
             e) interrupt fires
             f) request gets popped from queue head for hw dequeue
             G) requets from queue head wasn't enqueued
                     g1)  isr_tr_complete_low() doesn't
                     enqueue more requests and it doesn't prime EP,
                     rx traffic stalls
      
      Solution:
             a) enque queued requests ASAP, i.e. before calling complete() callback.
             b) don't HW enqueue and prime endpoint with recently added request and
             use the oldest request in the queue.
      
      Fixed issues:
             a) ep_queue() may return an error code despite request was successfully
             added to the queue (if _hardware_enqueue() fails)
             b) Added requests are always processed in LIFO order, even if they are
             added in complete() callback
             c) Finally more than two and more queued requests are processed consistently,
             even if they were added in complete() callback
      
      The fix was successfully tested on MIPS based SoC with 4KEc CPU core and
      CI13612 USB core. Board successfully boots with NFS root using g_ether
      on ci13xxx udc.
      Signed-off-by: NArtem Leonenko <tikkeri@gmail.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      d9bb9c18
    • A
      USB: gadgets: ci13xxx: fix probing of compiled-in gadget drivers · 6549e8b7
      Artem Leonenko 提交于
      Built-in gadget drivers have NULL-ifed unbind() function. Checking
      whether unbind() is NULL will never let any compiled into kernel
      driver attach.
      Signed-off-by: NArtem Leonenko <tikkeri@gmail.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      6549e8b7
    • G
      Merge branch 'usb-next' into musb-merge · 36facadd
      Greg Kroah-Hartman 提交于
      * usb-next: (132 commits)
        USB: uas: Use GFP_NOIO instead of GFP_KERNEL in I/O submission path
        USB: uas: Ensure we only bind to a UAS interface
        USB: uas: Rename sense pipe and sense urb to status pipe and status urb
        USB: uas: Use kzalloc instead of kmalloc
        USB: uas: Fix up the Sense IU
        usb: musb: core: kill unneeded #include's
        DA8xx: assign name to MUSB IRQ resource
        usb: gadget: g_ncm added
        usb: gadget: f_ncm.c added
        usb: gadget: u_ether: prepare for NCM
        usb: pch_udc: Fix setup transfers with data out
        usb: pch_udc: Fix compile error, warnings and checkpatch warnings
        usb: add ab8500 usb transceiver driver
        USB: gadget: Implement runtime PM for MSM bus glue driver
        USB: gadget: Implement runtime PM for ci13xxx gadget
        USB: gadget: Add USB controller driver for MSM SoC
        USB: gadget: Introduce ci13xxx_udc_driver struct
        USB: gadget: Initialize ci13xxx gadget device's coherent DMA mask
        USB: gadget: Fix "scheduling while atomic" bugs in ci13xxx_udc
        USB: gadget: Separate out PCI bus code from ci13xxx_udc
        ...
      36facadd
    • G
      Revert "USB: musb: pm: don't rely fully on clock support" · 2faa83e2
      Greg Kroah-Hartman 提交于
      This reverts commit 32d5dc95.
      
      Needed to properly merge the musb changes that are in the
      usb-next branch into Linus's tree.
      Acked-by: NFelipe Balbi <balbi@ti.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      2faa83e2
    • G
      Revert "USB: musb: blackfin: pm: make it work" · 224acb18
      Greg Kroah-Hartman 提交于
      This reverts commit 1e393c6e.
      
      Needed to properly merge the musb changes that are in the
      usb-next branch into Linus's tree.
      Acked-by: NFelipe Balbi <balbi@ti.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      224acb18
  2. 16 12月, 2010 12 次提交
  3. 15 12月, 2010 23 次提交