lkml.org 
[lkml]   [2022]   [Mar]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [PATCH V4 6/7] mmc: sdhci: Set error state for mmc driver
Date
> -----Original Message-----
> From: Adrian Hunter <adrian.hunter@intel.com>
> Sent: Wednesday, March 16, 2022 11:28 AM
> To: Sajida Bhanu (Temp) (QUIC) <quic_c_sbhanu@quicinc.com>; Asutosh
> Das (asd) <asutoshd@quicinc.com>; ulf.hansson@linaro.org;
> agross@kernel.org; bjorn.andersson@linaro.org; linux-
> mmc@vger.kernel.org; linux-arm-msm@vger.kernel.org; linux-
> kernel@vger.kernel.org
> Cc: Veerabhadrarao Badiganti (QUIC) <quic_vbadigan@quicinc.com>; Ram
> Prakash Gupta (QUIC) <quic_rampraka@quicinc.com>; Pradeep Pragallapati
> (QUIC) <quic_pragalla@quicinc.com>; Sarthak Garg (QUIC)
> <quic_sartgarg@quicinc.com>; Nitin Rawat (QUIC)
> <quic_nitirawa@quicinc.com>; Sayali Lokhande (QUIC)
> <quic_sayalil@quicinc.com>; Sayali Lokhande <sayalil@codeaurora.org>; Bao
> D . Nguyen <nguyenb@codeaurora.org>
> Subject: Re: [PATCH V4 6/7] mmc: sdhci: Set error state for mmc driver
>
> On 12/03/2022 20:15, Sajida Bhanu (Temp) (QUIC) wrote:
> > Hi,
> >
> > Thanks for the review.
> >
> > Please find the inline comments.
> >
> > Thanks,
> > Sajida
> >> -----Original Message-----
> >> From: Adrian Hunter <adrian.hunter@intel.com>
> >> Sent: Tuesday, March 8, 2022 3:36 PM
> >> To: Sajida Bhanu (Temp) (QUIC) <quic_c_sbhanu@quicinc.com>; Asutosh
> >> Das (asd) <asutoshd@quicinc.com>; ulf.hansson@linaro.org;
> >> agross@kernel.org; bjorn.andersson@linaro.org; linux-
> >> mmc@vger.kernel.org; linux-arm-msm@vger.kernel.org; linux-
> >> kernel@vger.kernel.org
> >> Cc: Veerabhadrarao Badiganti (QUIC) <quic_vbadigan@quicinc.com>; Ram
> >> Prakash Gupta (QUIC) <quic_rampraka@quicinc.com>; Pradeep
> >> Pragallapati
> >> (QUIC) <quic_pragalla@quicinc.com>; Sarthak Garg (QUIC)
> >> <quic_sartgarg@quicinc.com>; Nitin Rawat (QUIC)
> >> <quic_nitirawa@quicinc.com>; Sayali Lokhande (QUIC)
> >> <quic_sayalil@quicinc.com>; Sayali Lokhande <sayalil@codeaurora.org>;
> >> Bao D . Nguyen <nguyenb@codeaurora.org>
> >> Subject: Re: [PATCH V4 6/7] mmc: sdhci: Set error state for mmc
> >> driver
> >>
> >> On 2.3.2022 15.03, Shaik Sajida Bhanu wrote:
> >>> Set error state if any errors observed in eMMC and SD card driver level.
> >>>
> >>> Signed-off-by: Liangliang Lu <luliang@codeaurora.org>
> >>> Signed-off-by: Sayali Lokhande <sayalil@codeaurora.org>
> >>> Signed-off-by: Bao D. Nguyen <nguyenb@codeaurora.org>
> >>> Signed-off-by: Ram Prakash Gupta <quic_rampraka@quicinc.com>
> >>> Signed-off-by: Shaik Sajida Bhanu <quic_c_sbhanu@quicinc.com>
> >>> ---
> >>> drivers/mmc/host/sdhci.c | 22 ++++++++++++++++++++++
> >>> 1 file changed, 22 insertions(+)
> >>>
> >>> diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
> >>> index
> >>> 741fb06..4ba3797 100644
> >>> --- a/drivers/mmc/host/sdhci.c
> >>> +++ b/drivers/mmc/host/sdhci.c
> >>> @@ -224,6 +224,8 @@ void sdhci_reset(struct sdhci_host *host, u8
> mask)
> >>> if (timedout) {
> >>> pr_err("%s: Reset 0x%x never completed.\n",
> >>> mmc_hostname(host->mmc), (int)mask);
> >>> + if (host->mmc && !host->mmc->err_state)
> >>> + mmc_debugfs_err_stats_enable(host-
> >>> mmc);
> >>
> >> I really do not understand why this cannot be another err_stats entry
> >> such as MMC_ERR_DRIVER and then as below?
> >>
> >> sdhci_err_stats_inc(host, DRIVER);
> >>
> >>
> > Hi,
> >
> > err_stats having all the error types.
> > err_state is not the error type, if err_state set means some errors occurred
> in driver and we will go and check err_stats to know exact error.
>
>
> In sdhci.c use only sdhci_err_stats_inc() adding err_stats entries as needed.
> Seems like there are controller timeouts (say MMC_ERR_CTRL_TIMEOUT)
> and unexpected interrupts (say MMC_ERR_UNEXPECTED_IRQ)
>
> In drivers/mmc/core/debugfs.c calculate err_state as needed e.g.
>
> static int mmc_err_state_get(void *data, u64 *val) {
> struct mmc_host *host = data;
>
> *val = host->err_stats[MMC_ERR_REQ_TIMEOUT] ||
> host->err_stats[MMC_ERR_CTRL_TIMEOUT] ||
> host->err_stats[MMC_ERR_UNEXPECTED_IRQ] ||
> <etc>
>
> return 0;
> }
Hi,

Thank you for the suggestion, sure will make the changes.

Thanks,
Sajida
\
 
 \ /
  Last update: 2022-03-17 06:21    [W:0.360 / U:0.004 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site