1. 08 11月, 2012 1 次提交
  2. 03 10月, 2012 1 次提交
    • J
      mmc: mxcmmc: fix bug that may block a data transfer forever · f6ad0a48
      Javier Martin 提交于
      The problem can be easily reproduced using a script that loops
      copying a file in an SD card to another place in the same SD card
      and its related to read transfers. This only happens with DMA enabled.
      
      This is related to the fact that, when reading, an MMC irq signals
      the fact that all data from the SD card has been copied to the
      internal buffers. However, it doesn't signal whether the DMA transfer
      that is in charge of moving data from these internal buffers to RAM
      has finished or not. Thus, calling dmaengine_terminate_all() in the
      MMC irq routine can cancel an ongoing DMA transfer leaving some data
      in the internal buffers that produces an accumulative effect which,
      in the end, blocks a read data transfer forever.
      
      The following patch watches DMA irq for reading and MMC irqs for
      writing transfers. The 'dangerous' usage of dmaengine_terminate_all()
      is removed and a timeout of 10 seconds is added so that the MMC won't
      block forever anymore.
      Signed-off-by: NJavier Martin <javier.martin@vista-silicon.com>
      Reviewed-by: NSascha Hauer <s.hauer@pengutronix.de>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      f6ad0a48
  3. 14 9月, 2012 1 次提交
  4. 25 4月, 2012 1 次提交
    • S
      mmc mxcmmc: do not depend on grouped clocks · 529aa29e
      Sascha Hauer 提交于
      the current i.MX clock support groups together unrelated clocks
      to a single clock which is then used by the driver. This can't
      be accomplished with the generic clock framework so we instead
      request the individual clocks in the driver. For i.MX there are
      generally three different clocks:
      
      ipg: bus clock (needed to access registers)
      ahb: dma relevant clock, sometimes referred to as hclk in the datasheet
      per: bit clock, pixel clock
      
      This patch changes the driver to request the individual clocks.
      Currently all clk_get will get the same clock until the SoCs
      are converted to the generic clock framework
      Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de>
      529aa29e
  5. 21 3月, 2012 1 次提交
  6. 22 2月, 2012 1 次提交
  7. 30 1月, 2012 1 次提交
  8. 12 1月, 2012 1 次提交
  9. 11 12月, 2011 1 次提交
  10. 31 10月, 2011 1 次提交
  11. 27 10月, 2011 1 次提交
  12. 18 10月, 2011 1 次提交
  13. 07 7月, 2011 1 次提交
    • S
      ARM i.MX dma: Fix burstsize settings · 6584cb88
      Sascha Hauer 提交于
      dmaengine expects the maxburst parameter in words, not bytes.
      The imxdma driver and its users do this wrong. Fix this.
      
      As a side note the imx-pcm-dma-mx2 driver was 'fixed' to work
      with imx-dma. This broke the driver with imx-sdma support which
      correctly takes the maxburst parameter in words. This patch
      puts the sdma based sound back to work.
      Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de>
      6584cb88
  14. 16 3月, 2011 1 次提交
  15. 09 1月, 2011 3 次提交
  16. 23 10月, 2010 1 次提交
  17. 26 7月, 2010 2 次提交
  18. 28 5月, 2010 1 次提交
  19. 17 5月, 2010 1 次提交
    • D
      ARM: mx3: Fix a race condition in mxcmmc · 4a31f2ef
      Daniel Mack 提交于
      From cefcdab08d1c9636c4a7290bc2bbe937d051bce4 Mon Sep 17 00:00:00 2001
      From: Volker Ernst <volker.ernst@txtr.com>
      Date: Mon, 26 Apr 2010 22:51:07 +0200
      Subject: [PATCH] ARM: mx3: Fix a race condition in mxcmmc
      
      This fixes a race condition regarding interrupt bits in the SDHC
      controller driver code.
      
      In case of PIO-transfer it does not clear SDHC-status bit#11/12
      in the INT-handler anymore. INT-handler might be called during
      an ongoing PIO-data-transfer (with some other INT-flag set) and
      PIO-transfer depends on these bits being set to detect the end
      of the data-transfer. This also means that at the end of PIO-
      transfer that PIO-software has to clear these bits itself.
      
      However in case of DMA-transfer these bits have to be cleared
      in the INT-handler, because they are used to generate INTs then.
      
      Works solid, no more problems here, can transfer big files.
      Signed-off-by: NVolker Ernst <volker.ernst@txtr.com>
      Acked-by: NDaniel Mack <daniel@caiaq.de>
      Cc: Andy Green <andy@warmcat.com>
      Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de>
      4a31f2ef
  20. 14 4月, 2010 3 次提交
    • D
      ARM: MXC: mxcmmc: work around a bug in the SDHC busy line handling · 3fcb027d
      Daniel Mack 提交于
      MX3 SoCs have a silicon bug which corrupts CRC calculation of
      multi-block transfers when connected SDIO peripheral doesn't drive the
      BUSY line as required by the specs.
      
      One way to prevent this is to only allow 1-bit transfers.
      
      Another way is playing tricks with the DMA engine, but this isn't
      mainline yet. So for now, we live with the performance drawback of 1-bit
      transfers until a nicer solution is found.
      
      This patch introduces a new host controller callback 'init_card' which
      is for now only called from mmc_sdio_init_card().
      Signed-off-by: NDaniel Mack <daniel@caiaq.de>
      Cc: Sascha Hauer <s.hauer@pengutronix.de>
      Cc: Dan Williams <dan.j.williams@intel.com>
      Cc: Volker Ernst <volker.ernst@txtr.com>
      Cc: Jiri Kosina <jkosina@suse.cz>
      Cc: Michał Mirosław <mirqus@gmail.com>
      Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de>
      3fcb027d
    • D
      ARM: MXC: mxcmmc: Teach the driver SDIO operations · f441b993
      Daniel Mack 提交于
      Successfully tested on MX31 hardware using libertas SDIO peripherals.
      Signed-off-by: NDaniel Mack <daniel@caiaq.de>
      Cc: Sascha Hauer <s.hauer@pengutronix.de>
      Cc: Dan Williams <dan.j.williams@intel.com>
      Cc: Volker Ernst <volker.ernst@txtr.com>
      Cc: Jiri Kosina <jkosina@suse.cz>
      Cc: Michał Mirosław <mirqus@gmail.com>
      Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de>
      f441b993
    • D
      ARM: MXC: mxcmmc: misc cleanups · 4725f6f1
      Daniel Mack 提交于
      Be more verbose on error messages and add one debug message.
      Signed-off-by: NDaniel Mack <daniel@caiaq.de>
      Cc: Sascha Hauer <s.hauer@pengutronix.de>
      Cc: Dan Williams <dan.j.williams@intel.com>
      Cc: Volker Ernst <volker.ernst@txtr.com>
      Cc: Jiri Kosina <jkosina@suse.cz>
      Cc: Michał Mirosław <mirqus@gmail.com>
      Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de>
      4725f6f1
  21. 13 3月, 2010 1 次提交
  22. 09 2月, 2010 1 次提交
  23. 16 12月, 2009 1 次提交
  24. 21 9月, 2009 1 次提交
  25. 14 6月, 2009 1 次提交
  26. 04 6月, 2009 3 次提交
  27. 13 3月, 2009 2 次提交
  28. 03 2月, 2009 1 次提交