1. 20 1月, 2020 5 次提交
  2. 18 12月, 2019 1 次提交
  3. 16 12月, 2019 4 次提交
  4. 20 11月, 2019 1 次提交
  5. 13 11月, 2019 1 次提交
    • R
      mmc: sdhci: Check card status after reset · dcaac3f7
      Raul E Rangel 提交于
      In sdhci_do_reset we call the reset callback which is typically
      sdhci_reset. sdhci_reset can wait for up to 100ms waiting for the
      controller to reset. If SDHCI_RESET_ALL was passed as the flag, the
      controller will clear the IRQ mask. If during that 100ms the card is
      removed there is no notification to the MMC system that the card was
      removed. So from the drivers point of view the card is always present.
      
      By making sdhci_reinit compare the present state it can schedule a
      rescan if the card was removed while a reset was in progress.
      Signed-off-by: NRaul E Rangel <rrangel@chromium.org>
      Acked-by: NAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      dcaac3f7
  6. 28 9月, 2019 2 次提交
  7. 11 9月, 2019 9 次提交
  8. 07 8月, 2019 1 次提交
    • B
      mmc: sdhci-sprd: Fix the incorrect soft reset operation when runtime resuming · c6303c5d
      Baolin Wang 提交于
      The SD host controller specification defines 3 types software reset:
      software reset for data line, software reset for command line and software
      reset for all. Software reset for all means this reset affects the entire
      Host controller except for the card detection circuit.
      
      In sdhci_runtime_resume_host() we always do a software "reset for all",
      which causes the Spreadtrum variant controller to work abnormally after
      resuming. To fix the problem, let's do a software reset for the data and
      the command part, rather than "for all".
      
      However, as sdhci_runtime_resume() is a common sdhci function and we don't
      want to change the behaviour for other variants, let's introduce a new
      in-parameter for it. This enables the caller to decide if a "reset for all"
      shall be done or not.
      Signed-off-by: NBaolin Wang <baolin.wang@linaro.org>
      Fixes: fb8bd90f ("mmc: sdhci-sprd: Add Spreadtrum's initial host controller")
      Cc: stable@vger.kernel.org
      Signed-off-by: NUlf Hansson <ulf.hansson@linaro.org>
      c6303c5d
  9. 31 5月, 2019 1 次提交
  10. 29 5月, 2019 1 次提交
  11. 15 4月, 2019 6 次提交
  12. 08 4月, 2019 1 次提交
    • W
      drivers: Remove explicit invocations of mmiowb() · fb24ea52
      Will Deacon 提交于
      mmiowb() is now implied by spin_unlock() on architectures that require
      it, so there is no reason to call it from driver code. This patch was
      generated using coccinelle:
      
      	@mmiowb@
      	@@
      	- mmiowb();
      
      and invoked as:
      
      $ for d in drivers include/linux/qed sound; do \
      spatch --include-headers --sp-file mmiowb.cocci --dir $d --in-place; done
      
      NOTE: mmiowb() has only ever guaranteed ordering in conjunction with
      spin_unlock(). However, pairing each mmiowb() removal in this patch with
      the corresponding call to spin_unlock() is not at all trivial, so there
      is a small chance that this change may regress any drivers incorrectly
      relying on mmiowb() to order MMIO writes between CPUs using lock-free
      synchronisation. If you've ended up bisecting to this commit, you can
      reintroduce the mmiowb() calls using wmb() instead, which should restore
      the old behaviour on all architectures other than some esoteric ia64
      systems.
      Acked-by: NLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      fb24ea52
  13. 25 2月, 2019 4 次提交
  14. 08 1月, 2019 1 次提交
  15. 17 12月, 2018 2 次提交