1. 22 11月, 2010 4 次提交
    • A
      usb: musb: gadget: fix compilation warning · bb324b08
      Ajay Kumar Gupta 提交于
      Fixes below compilation warning when musb driver is compiled for
      PIO mode:
      
      drivers/usb/musb/musb_gadget.c: In function 'musb_g_rx':
      drivers/usb/musb/musb_gadget.c:840:
      		warning: label 'exit' defined but not used
      Signed-off-by: NAjay Kumar Gupta <ajay.gupta@ti.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      bb324b08
    • M
      usb: musb: clear RXCSR_AUTOCLEAR before PIO read · e75df371
      Ming Lei 提交于
      If RXCSR_AUTOCLEAR flag is not cleard before PIO reading, one packet
      may be recieved by musb fifo, but no chance to notify
      software, so cause packet loss, follows the detailed process:
      
      	- PIO read one packet
      	- musb fifo auto clear the MUSB_RXCSR_RXPKTRDY
      	- musb continue to recieve the next packet, and MUSB_RXCSR_RXPKTRDY
      	is set
      	- software clear the MUSB_RXCSR_RXPKTRDY, so there is no chance for
      	musb to notify software that the 2nd recieved packet.
      
      The patch does fix the g_ether issue below:
      
      	- use fifo_mode 3 to enable double buffer
      	- 'ping -s 1024 IP_OF_BEAGLE_XM'
      	- one usb packet of 512 byte is lost, so ping failed,
      	which can be observed by wireshark
      
      note:
      	Beagle xm takes musb rtl1.8 and may fallback to pio mode
      	for unaligned buffer.
      Signed-off-by: NMing Lei <tom.leiming@gmail.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      e75df371
    • H
      usb: musb: unmap dma buffer when switching to PIO · 92d2711f
      Hema Kalliguddi 提交于
      Buffer is mapped to dma when dma channel is
      allocated. If, for some reason, dma channel
      programming fails, musb code will fallback
      to PIO mode to transfer that request. In
      that case, we need to unmap the buffer
      back to CPU.
      
      MUSB RTL1.8 and above cannot handle buffers
      which are not 32bit aligned. That happens to
      every request sent by g_ether gadget
      driver. Since the buffer sent was unaligned,
      we need to fallback to PIO.
      
      Because of that, g_ether was failing due
      to missing buffer unmapping.
      
      With this patch and [1] g_ether works fine
      with all MUSB revisions.
      
      Verified with OMAP3630 board, which has
      MUSB RTL1.8 using g_ether and g_zero.
      
      [1] http://www.spinics.net/lists/linux-usb/msg38400.htmlSigned-off-by: NHema HK <hemahk@ti.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      92d2711f
    • L
      Linux 2.6.37-rc3 · 3561d43f
      Linus Torvalds 提交于
      3561d43f
  2. 20 11月, 2010 13 次提交
  3. 19 11月, 2010 23 次提交