public inbox for linux-arm-msm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 2/2] scsi: ufs-qcom: Fix ufs RST_n specs violation
       [not found] <1610090885-50099-1-git-send-email-ziqichen@codeaurora.org>
@ 2021-01-08  7:28 ` Ziqi Chen
  2021-01-08  8:05   ` Can Guo
  0 siblings, 1 reply; 3+ messages in thread
From: Ziqi Chen @ 2021-01-08  7:28 UTC (permalink / raw)
  To: asutoshd, nguyenb, cang, hongwus, rnayak, vinholikatti, jejb,
	martin.petersen, linux-scsi, kernel-team, saravanak, salyzyn,
	ziqichen, kwmad.kim, stanley.chu
  Cc: Andy Gross, Bjorn Andersson, Alim Akhtar, Avri Altman,
	James E.J. Bottomley, open list:ARM/QUALCOMM SUPPORT, open list

As per specs, e.g, JESD220E chapter 7.2, while powering
off/on the ufs device, RST_n signal should be between
VSS(Ground) and VCCQ/VCCQ2.

Signed-off-by: Ziqi Chen <ziqichen@codeaurora.org>
---
 drivers/scsi/ufs/ufs-qcom.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/scsi/ufs/ufs-qcom.c b/drivers/scsi/ufs/ufs-qcom.c
index 2206b1e..d8b896c 100644
--- a/drivers/scsi/ufs/ufs-qcom.c
+++ b/drivers/scsi/ufs/ufs-qcom.c
@@ -582,6 +582,10 @@ static int ufs_qcom_suspend(struct ufs_hba *hba, enum ufs_pm_op pm_op)
 		ufs_qcom_disable_lane_clks(host);
 		phy_power_off(phy);
 
+		/* reset the connected UFS device during power down */
+		if (host->device_reset)
+			gpiod_set_value_cansleep(host->device_reset, 1);
+
 	} else if (!ufs_qcom_is_link_active(hba)) {
 		ufs_qcom_disable_lane_clks(host);
 	}
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v5 2/2] scsi: ufs-qcom: Fix ufs RST_n specs violation
  2021-01-08  7:28 ` [PATCH v5 2/2] scsi: ufs-qcom: Fix ufs RST_n specs violation Ziqi Chen
@ 2021-01-08  8:05   ` Can Guo
  2021-01-08  8:15     ` ziqichen
  0 siblings, 1 reply; 3+ messages in thread
From: Can Guo @ 2021-01-08  8:05 UTC (permalink / raw)
  To: Ziqi Chen
  Cc: asutoshd, nguyenb, hongwus, rnayak, vinholikatti, jejb,
	martin.petersen, linux-scsi, kernel-team, saravanak, salyzyn,
	kwmad.kim, stanley.chu, Andy Gross, Bjorn Andersson, Alim Akhtar,
	Avri Altman, James E.J. Bottomley, linux-arm-msm, linux-kernel

On 2021-01-08 15:28, Ziqi Chen wrote:
> As per specs, e.g, JESD220E chapter 7.2, while powering
> off/on the ufs device, RST_n signal should be between
> VSS(Ground) and VCCQ/VCCQ2.
> 
> Signed-off-by: Ziqi Chen <ziqichen@codeaurora.org>
> ---
>  drivers/scsi/ufs/ufs-qcom.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/scsi/ufs/ufs-qcom.c b/drivers/scsi/ufs/ufs-qcom.c
> index 2206b1e..d8b896c 100644
> --- a/drivers/scsi/ufs/ufs-qcom.c
> +++ b/drivers/scsi/ufs/ufs-qcom.c
> @@ -582,6 +582,10 @@ static int ufs_qcom_suspend(struct ufs_hba *hba,
> enum ufs_pm_op pm_op)
>  		ufs_qcom_disable_lane_clks(host);
>  		phy_power_off(phy);
> 
> +		/* reset the connected UFS device during power down */
> +		if (host->device_reset)
> +			gpiod_set_value_cansleep(host->device_reset, 1);
> +

Instead of calling gpiod_set_value(1/0) directly,
can we have a wrapper func for it?

Thanks,
Can Guo.

>  	} else if (!ufs_qcom_is_link_active(hba)) {
>  		ufs_qcom_disable_lane_clks(host);
>  	}

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v5 2/2] scsi: ufs-qcom: Fix ufs RST_n specs violation
  2021-01-08  8:05   ` Can Guo
@ 2021-01-08  8:15     ` ziqichen
  0 siblings, 0 replies; 3+ messages in thread
From: ziqichen @ 2021-01-08  8:15 UTC (permalink / raw)
  To: Can Guo
  Cc: asutoshd, nguyenb, hongwus, rnayak, vinholikatti, jejb,
	martin.petersen, linux-scsi, kernel-team, saravanak, salyzyn,
	kwmad.kim, stanley.chu, Andy Gross, Bjorn Andersson, Alim Akhtar,
	Avri Altman, James E.J. Bottomley, linux-arm-msm, linux-kernel

On 2021-01-08 16:05, Can Guo wrote:
> On 2021-01-08 15:28, Ziqi Chen wrote:
>> As per specs, e.g, JESD220E chapter 7.2, while powering
>> off/on the ufs device, RST_n signal should be between
>> VSS(Ground) and VCCQ/VCCQ2.
>> 
>> Signed-off-by: Ziqi Chen <ziqichen@codeaurora.org>
>> ---
>>  drivers/scsi/ufs/ufs-qcom.c | 4 ++++
>>  1 file changed, 4 insertions(+)
>> 
>> diff --git a/drivers/scsi/ufs/ufs-qcom.c b/drivers/scsi/ufs/ufs-qcom.c
>> index 2206b1e..d8b896c 100644
>> --- a/drivers/scsi/ufs/ufs-qcom.c
>> +++ b/drivers/scsi/ufs/ufs-qcom.c
>> @@ -582,6 +582,10 @@ static int ufs_qcom_suspend(struct ufs_hba *hba,
>> enum ufs_pm_op pm_op)
>>  		ufs_qcom_disable_lane_clks(host);
>>  		phy_power_off(phy);
>> 
>> +		/* reset the connected UFS device during power down */
>> +		if (host->device_reset)
>> +			gpiod_set_value_cansleep(host->device_reset, 1);
>> +
> 
> Instead of calling gpiod_set_value(1/0) directly,
> can we have a wrapper func for it?
> 
> Thanks,
> Can Guo.

Sure, it'll be better that way.

Best Regards,
Ziqi

> 
>>  	} else if (!ufs_qcom_is_link_active(hba)) {
>>  		ufs_qcom_disable_lane_clks(host);
>>  	}

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-01-08  8:16 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <1610090885-50099-1-git-send-email-ziqichen@codeaurora.org>
2021-01-08  7:28 ` [PATCH v5 2/2] scsi: ufs-qcom: Fix ufs RST_n specs violation Ziqi Chen
2021-01-08  8:05   ` Can Guo
2021-01-08  8:15     ` ziqichen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox