1. 15 4月, 2019 2 次提交
  2. 25 2月, 2019 4 次提交
  3. 08 1月, 2019 1 次提交
  4. 17 12月, 2018 6 次提交
  5. 06 12月, 2018 1 次提交
    • A
      mmc: sdhci: fix the timeout check window for clock and reset · b704441e
      Alek Du 提交于
      We observed some premature timeouts on a virtualization platform, the log
      is like this:
      
      case 1:
      [159525.255629] mmc1: Internal clock never stabilised.
      [159525.255818] mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
      [159525.256049] mmc1: sdhci: Sys addr:  0x00000000 | Version:  0x00001002
      ...
      [159525.257205] mmc1: sdhci: Wake-up:   0x00000000 | Clock:    0x0000fa03
      From the clock control register dump, we are pretty sure the clock was
      stablized.
      
      case 2:
      [  914.550127] mmc1: Reset 0x2 never completed.
      [  914.550321] mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
      [  914.550608] mmc1: sdhci: Sys addr:  0x00000010 | Version:  0x00001002
      
      After checking the sdhci code, we found the timeout check actually has a
      little window that the CPU can be scheduled out and when it comes back,
      the original time set or check is not valid.
      
      Fixes: 5a436cc0 ("mmc: sdhci: Optimize delay loops")
      Cc: stable@vger.kernel.org      # v4.12+
      Signed-off-by: NAlek Du <alek.du@intel.com>
      Acked-by: NAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      b704441e
  6. 08 10月, 2018 12 次提交
  7. 30 7月, 2018 2 次提交
  8. 16 7月, 2018 1 次提交
  9. 03 5月, 2018 4 次提交
  10. 05 3月, 2018 2 次提交
  11. 31 1月, 2018 1 次提交
    • L
      mmc: sdhci: Implement an SDHCI-specific bounce buffer · bd9b9027
      Linus Walleij 提交于
      The bounce buffer is gone from the MMC core, and now we found out
      that there are some (crippled) i.MX boards out there that have broken
      ADMA (cannot do scatter-gather), and also broken PIO so they must
      use SDMA. Closer examination shows a less significant slowdown
      also on SDMA-only capable Laptop hosts.
      
      SDMA sets down the number of segments to one, so that each segment
      gets turned into a singular request that ping-pongs to the block
      layer before the next request/segment is issued.
      
      Apparently it happens a lot that the block layer send requests
      that include a lot of physically discontiguous segments. My guess
      is that this phenomenon is coming from the file system.
      
      These devices that cannot handle scatterlists in hardware can see
      major benefits from a DMA-contiguous bounce buffer.
      
      This patch accumulates those fragmented scatterlists in a physically
      contiguous bounce buffer so that we can issue bigger DMA data chunks
      to/from the card.
      
      When tested with a PCI-integrated host (1217:8221) that
      only supports SDMA:
      0b:00.0 SD Host controller: O2 Micro, Inc. OZ600FJ0/OZ900FJ0/OZ600FJS
              SD/MMC Card Reader Controller (rev 05)
      This patch gave ~1Mbyte/s improved throughput on large reads and
      writes when testing using iozone than without the patch.
      
      dmesg:
      sdhci-pci 0000:0b:00.0: SDHCI controller found [1217:8221] (rev 5)
      mmc0 bounce up to 128 segments into one, max segment size 65536 bytes
      mmc0: SDHCI controller on PCI [0000:0b:00.0] using DMA
      
      On the i.MX SDHCI controllers on the crippled i.MX 25 and i.MX 35
      the patch restores the performance to what it was before we removed
      the bounce buffers.
      
      Cc: Pierre Ossman <pierre@ossman.eu>
      Cc: Benoît Thébaudeau <benoit@wsystem.com>
      Cc: Fabio Estevam <fabio.estevam@nxp.com>
      Cc: Benjamin Beckmeyer <beckmeyer.b@rittal.de>
      Cc: stable@vger.kernel.org # v4.14+
      Fixes: de3ee99b ("mmc: Delete bounce buffer handling")
      Tested-by: NBenjamin Beckmeyer <beckmeyer.b@rittal.de>
      Acked-by: NAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      bd9b9027
  12. 17 1月, 2018 3 次提交
  13. 11 1月, 2018 1 次提交