[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20ed97a2333ff27d5901c373579f710a@codeaurora.org>
Date: Mon, 13 Jan 2020 10:59:03 -0800
From: asutoshd@...eaurora.org
To: Stanley Chu <stanley.chu@...iatek.com>
Cc: linux-scsi@...r.kernel.org, martin.petersen@...cle.com,
avri.altman@....com, alim.akhtar@...sung.com, jejb@...ux.ibm.com,
beanhuo@...ron.com, cang@...eaurora.org, matthias.bgg@...il.com,
bvanassche@....org, linux-mediatek@...ts.infradead.org,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
kuohong.wang@...iatek.com, peter.wang@...iatek.com,
chun-hung.wu@...iatek.com, andy.teng@...iatek.com
Subject: Re: [PATCH v1 2/3] scsi: ufs: add device reset history for vendor
implementations
On 2020-01-04 06:26, Stanley Chu wrote:
> Device reset history shall be also added for vendor's device
> reset variant operation implementation.
>
> Cc: Alim Akhtar <alim.akhtar@...sung.com>
> Cc: Asutosh Das <asutoshd@...eaurora.org>
> Cc: Avri Altman <avri.altman@....com>
> Cc: Bart Van Assche <bvanassche@....org>
> Cc: Bean Huo <beanhuo@...ron.com>
> Cc: Can Guo <cang@...eaurora.org>
> Cc: Matthias Brugger <matthias.bgg@...il.com>
> Signed-off-by: Stanley Chu <stanley.chu@...iatek.com>
> ---
> drivers/scsi/ufs/ufshcd.c | 5 +++--
> drivers/scsi/ufs/ufshcd.h | 6 +++++-
> 2 files changed, 8 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
> index bae43da00bb6..29e3d50aabfb 100644
> --- a/drivers/scsi/ufs/ufshcd.c
> +++ b/drivers/scsi/ufs/ufshcd.c
> @@ -4346,13 +4346,14 @@ static inline int
> ufshcd_disable_device_tx_lcc(struct ufs_hba *hba)
> return ufshcd_disable_tx_lcc(hba, true);
> }
>
> -static void ufshcd_update_reg_hist(struct ufs_err_reg_hist *reg_hist,
> - u32 reg)
> +void ufshcd_update_reg_hist(struct ufs_err_reg_hist *reg_hist,
> + u32 reg)
> {
> reg_hist->reg[reg_hist->pos] = reg;
> reg_hist->tstamp[reg_hist->pos] = ktime_get();
> reg_hist->pos = (reg_hist->pos + 1) % UFS_ERR_REG_HIST_LENGTH;
> }
> +EXPORT_SYMBOL_GPL(ufshcd_update_reg_hist);
>
> /**
> * ufshcd_link_startup - Initialize unipro link startup
> diff --git a/drivers/scsi/ufs/ufshcd.h b/drivers/scsi/ufs/ufshcd.h
> index e05cafddc87b..de1be6a862b0 100644
> --- a/drivers/scsi/ufs/ufshcd.h
> +++ b/drivers/scsi/ufs/ufshcd.h
> @@ -805,6 +805,8 @@ int ufshcd_wait_for_register(struct ufs_hba *hba,
> u32 reg, u32 mask,
> u32 val, unsigned long interval_us,
> unsigned long timeout_ms, bool can_sleep);
> void ufshcd_parse_dev_ref_clk_freq(struct ufs_hba *hba, struct clk
> *refclk);
> +void ufshcd_update_reg_hist(struct ufs_err_reg_hist *reg_hist,
> + u32 reg);
>
> static inline void check_upiu_size(void)
> {
> @@ -1083,8 +1085,10 @@ static inline void
> ufshcd_vops_dbg_register_dump(struct ufs_hba *hba)
>
> static inline void ufshcd_vops_device_reset(struct ufs_hba *hba)
> {
> - if (hba->vops && hba->vops->device_reset)
> + if (hba->vops && hba->vops->device_reset) {
> hba->vops->device_reset(hba);
> + ufshcd_update_reg_hist(&hba->ufs_stats.dev_reset, 0);
> + }
> }
>
> extern struct ufs_pm_lvl_states ufs_pm_lvl_states[];
Reviewed-by: Asutosh Das <asutoshd@...eaurora.org>
Powered by blists - more mailing lists