Re: [PATCH v2 0/3] Introduce the request_atomic() for the host

From: Adrian Hunter
Date: Tue Mar 17 2020 - 09:25:50 EST


On 17/03/20 12:14 pm, Baolin Wang wrote:
> 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.

I tend to think the API requires the possibility for host controllers to
return "busy", so that should be sorted out first.

>
> 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(-)
>