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. Note: Adrian pointed out that it is not good if moving the polling of inhibit bits in sdhci_send_command() into the interrupt context, but now I have not found a better way to address Adrian's concern. Moveover this is an unusual abnormal case and the original code has the same problem, so I plan to create another patch set to talk about and fix this issue. 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 (3): mmc: host: Introduce the request_atomic() for the host mmc: host: sdhci: Implement the request_atomic() API mmc: host: sdhci-sprd: Implement the request_atomic() API drivers/mmc/host/mmc_hsq.c | 5 ++++- drivers/mmc/host/sdhci-sprd.c | 23 ++++++++++++++++++++--- drivers/mmc/host/sdhci.c | 27 +++++++++++++++++++-------- drivers/mmc/host/sdhci.h | 1 + include/linux/mmc/host.h | 3 +++ 5 files changed, 47 insertions(+), 12 deletions(-) -- 1.9.1