mbox series

[v3,0/4] Introduce the request_atomic() for the host

Message ID cover.1584615043.git.baolin.wang7@gmail.com (mailing list archive)
Headers show
Series Introduce the request_atomic() for the host | expand

Message

Baolin Wang March 19, 2020, 10:54 a.m. UTC
This patch set introduces a new request_atomic() interface for the
MMC host controller, which is used to submit a request to host in
the atomic context, such as in the irq hard handler, to reduce the
request latency.

Any comments are welcome. Thanks.

Changes from v2:
 - Return busy flag if encountering unusual card busy state
 instead of polling in interrupt context.
 - Add a work for HSQ to try again in non-atomic context if the host
 returns busy flag.

Changes from v1:
 - Re-split the changes to make them more clear suggested by Ulf.
 - Factor out the auto CMD23 checking into a separate function.

Baolin Wang (4):
  mmc: host: Introduce the request_atomic() for the host
  mmc: host: sdhci: Implement the request_atomic() API
  mmc: host: hsq: Handle an unusual case of returing busy
  mmc: host: sdhci-sprd: Implement the request_atomic() API

 drivers/mmc/host/mmc_hsq.c    | 40 +++++++++++++++++++++++++-
 drivers/mmc/host/mmc_hsq.h    |  1 +
 drivers/mmc/host/sdhci-sprd.c | 23 +++++++++++++--
 drivers/mmc/host/sdhci.c      | 65 ++++++++++++++++++++++++++++++++-----------
 drivers/mmc/host/sdhci.h      |  4 ++-
 include/linux/mmc/host.h      |  3 ++
 6 files changed, 114 insertions(+), 22 deletions(-)