2019-03-10 07:56:32

by Kangjie Lu

[permalink] [raw]
Subject: [PATCH] mmc_spi: add a status check for spi_sync_locked

In case spi_sync_locked fails, the fix reports the error and
returns the error code upstream.

Signed-off-by: Kangjie Lu <[email protected]>
---
drivers/mmc/host/mmc_spi.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/mmc/host/mmc_spi.c b/drivers/mmc/host/mmc_spi.c
index 1b1498805972..32fea585262b 100644
--- a/drivers/mmc/host/mmc_spi.c
+++ b/drivers/mmc/host/mmc_spi.c
@@ -819,6 +819,10 @@ mmc_spi_readblock(struct mmc_spi_host *host, struct spi_transfer *t,
}

status = spi_sync_locked(spi, &host->m);
+ if (status < 0) {
+ dev_dbg(&spi->dev, "read error %02x (%d)\n", status, status);
+ return status;
+ }

if (host->dma_dev) {
dma_sync_single_for_cpu(host->dma_dev,
--
2.17.1



2019-03-10 13:00:57

by Laurent Pinchart

[permalink] [raw]
Subject: Re: [PATCH] mmc_spi: add a status check for spi_sync_locked

Hi Kangjie,

Thank you for the patch.

On Sun, Mar 10, 2019 at 01:53:05AM -0600, Kangjie Lu wrote:
> In case spi_sync_locked fails, the fix reports the error and
> returns the error code upstream.
>
> Signed-off-by: Kangjie Lu <[email protected]>
> ---
> drivers/mmc/host/mmc_spi.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/mmc/host/mmc_spi.c b/drivers/mmc/host/mmc_spi.c
> index 1b1498805972..32fea585262b 100644
> --- a/drivers/mmc/host/mmc_spi.c
> +++ b/drivers/mmc/host/mmc_spi.c
> @@ -819,6 +819,10 @@ mmc_spi_readblock(struct mmc_spi_host *host, struct spi_transfer *t,
> }
>
> status = spi_sync_locked(spi, &host->m);
> + if (status < 0) {
> + dev_dbg(&spi->dev, "read error %02x (%d)\n", status, status);

I don't think you need to print the status in both hex and in decimal
forms. %d should be enough, error codes are usually printed in decimal
in the kernel. Apart from that,

Reviewed-by: Laurent Pinchart <[email protected]>

> + return status;
> + }
>
> if (host->dma_dev) {
> dma_sync_single_for_cpu(host->dma_dev,

--
Regards,

Laurent Pinchart