1. 18 4月, 2009 1 次提交
  2. 25 3月, 2009 2 次提交
    • A
      USB: musb: NAK timeout scheme on bulk RX endpoint · 1e0320f0
      Ajay Kumar Gupta 提交于
      Fixes endpoint starvation issue when more than one bulk QH is
      multiplexed on the reserved bulk RX endpoint, which is normal
      for cases like serial and ethernet adapters.
      
      This patch sets the NAK timeout interval for such QHs, and when
      a timeout triggers the next QH will be scheduled.  (This resembles
      the bulk scheduling done in hardware by EHCI, OHCI, and UHCI.)
      
      This scheme doesn't work for devices which are connected to a
      high to full speed tree (transaction translator) as there is
      no NAK timeout interrupt from the musb controller from such
      devices.
      
      Tested with PIO, Inventra DMA, CPPI DMA.
      
      [ dbrownell@users.sourceforge.net:  fold in start_urb() update;
        clarify only for bulk RX; don't accidentally clear WZC bits ]
      Signed-off-by: NAjay Kumar Gupta <ajay.gupta@ti.com>
      Cc: Felipe Balbi <felipe.balbi@nokia.com>
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      1e0320f0
    • S
      USB: musb: rewrite host periodic endpoint allocation · 5d67a851
      Sergei Shtylyov 提交于
      The current MUSB host code doesn't make use of all the available
      FIFOs in for periodic transfers since it wrongly assumes the RX
      and TX sides of any given hw_ep always share one FIFO.
      
      Change:  use 'in_qh' and 'out_qh' fields of the 'struct musb_hw_ep'
      to check the endpoint's business; get rid of the now-unused 'periodic'
      array in the 'struct musb'.  Also optimize a loop induction variable
      in the endpoint lookup code.
      
      (Based on a previous patch from Ajay Kumar Gupta <ajay.gupta@ti.com>)
      
      [ dbrownell@users.sourceforge.net: clarify description and origin
        of this fix; whitespace ]
      Signed-off-by: NSergei Shtylyov <sshtylyov@ru.mvista.com>
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Cc: Felipe Balbi <felipe.balbi@nokia.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      5d67a851
  3. 28 2月, 2009 6 次提交
  4. 28 1月, 2009 1 次提交
    • J
      USB: musb uses endpoint functions · 96bcd090
      Julia Lawall 提交于
      This set of patches introduces calls to the following set of functions:
      
      usb_endpoint_dir_in(epd)
      usb_endpoint_dir_out(epd)
      usb_endpoint_is_bulk_in(epd)
      usb_endpoint_is_bulk_out(epd)
      usb_endpoint_is_int_in(epd)
      usb_endpoint_is_int_out(epd)
      usb_endpoint_num(epd)
      usb_endpoint_type(epd)
      usb_endpoint_xfer_bulk(epd)
      usb_endpoint_xfer_control(epd)
      usb_endpoint_xfer_int(epd)
      usb_endpoint_xfer_isoc(epd)
      
      In some cases, introducing one of these functions is not possible, and it
      just replaces an explicit integer value by one of the following constants:
      
      USB_ENDPOINT_XFER_BULK
      USB_ENDPOINT_XFER_CONTROL
      USB_ENDPOINT_XFER_INT
      USB_ENDPOINT_XFER_ISOC
      
      An extract of the semantic patch that makes these changes is as follows:
      (http://www.emn.fr/x-info/coccinelle/)
      
      // <smpl>
      @r1@ struct usb_endpoint_descriptor *epd; @@
      
      - ((epd->bmAttributes & \(USB_ENDPOINT_XFERTYPE_MASK\|3\)) ==
      - \(USB_ENDPOINT_XFER_CONTROL\|0\))
      + usb_endpoint_xfer_control(epd)
      
      @r5@ struct usb_endpoint_descriptor *epd; @@
      
      - ((epd->bEndpointAddress & \(USB_ENDPOINT_DIR_MASK\|0x80\)) ==
      -  \(USB_DIR_IN\|0x80\))
      + usb_endpoint_dir_in(epd)
      
      @inc@
      @@
      
      #include <linux/usb.h>
      
      @depends on !inc && (r1||r5)@
      @@
      
      + #include <linux/usb.h>
        #include <linux/usb/...>
      // </smpl>
      Signed-off-by: NJulia Lawall <julia@diku.dk>
      Acked-by: NFelipe Balbi <felipe.balbi@nokia.com>
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      96bcd090
  5. 08 1月, 2009 2 次提交
  6. 20 11月, 2008 1 次提交
  7. 14 11月, 2008 2 次提交
  8. 18 10月, 2008 3 次提交
  9. 14 8月, 2008 1 次提交