[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAPDyKFrPw63KD5mESDmm2pya6bsz01jHiKguMP1GPhWDDZ644Q@mail.gmail.com>
Date: Tue, 3 Jul 2018 11:00:30 +0200
From: Ulf Hansson <ulf.hansson@...aro.org>
To: Qing Xia <xiaqing17@...ilicon.com>
Cc: Jaehoon Chung <jh80.chung@...sung.com>,
Evgeniy Didin <Evgeniy.Didin@...opsys.com>,
Shawn Lin <shawn.lin@...k-chips.com>,
Doug Anderson <dianders@...omium.org>,
"linux-mmc@...r.kernel.org" <linux-mmc@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2] mmc: dw_mmc: fix card threshold control configuration
On 3 July 2018 at 09:06, Qing Xia <xiaqing17@...ilicon.com> wrote:
> From: x00270170 <xiaqing17@...ilicon.com>
>
> Card write threshold control is supposed to be set since controller
> version 2.80a for data write in HS400 mode and data read in
> HS200/HS400/SDR104 mode. However the current code returns without
> configuring it in the case of data writing in HS400 mode.
> Meanwhile the patch fixes that the current code goes to
> 'disable' when doing data reading in HS400 mode.
>
> Fixes: 7e4bf1bc9543 ("mmc: dw_mmc: add the card write threshold for HS400 mode")
> Signed-off-by: Qing Xia <xiaqing17@...ilicon.com>
Thanks, applied/moved to fixes for 4.18!
Kind regards
Uffe
> ---
> drivers/mmc/host/dw_mmc.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
> index 29a1afa..3ee8f57 100644
> --- a/drivers/mmc/host/dw_mmc.c
> +++ b/drivers/mmc/host/dw_mmc.c
> @@ -1065,8 +1065,8 @@ static void dw_mci_ctrl_thld(struct dw_mci *host, struct mmc_data *data)
> * It's used when HS400 mode is enabled.
> */
> if (data->flags & MMC_DATA_WRITE &&
> - !(host->timing != MMC_TIMING_MMC_HS400))
> - return;
> + host->timing != MMC_TIMING_MMC_HS400)
> + goto disable;
>
> if (data->flags & MMC_DATA_WRITE)
> enable = SDMMC_CARD_WR_THR_EN;
> @@ -1074,7 +1074,8 @@ static void dw_mci_ctrl_thld(struct dw_mci *host, struct mmc_data *data)
> enable = SDMMC_CARD_RD_THR_EN;
>
> if (host->timing != MMC_TIMING_MMC_HS200 &&
> - host->timing != MMC_TIMING_UHS_SDR104)
> + host->timing != MMC_TIMING_UHS_SDR104 &&
> + host->timing != MMC_TIMING_MMC_HS400)
> goto disable;
>
> blksz_depth = blksz / (1 << host->data_shift);
> --
> 2.8.1
>
Powered by blists - more mailing lists