Re: [PATCH V5 4/6] scsi: ufs: qcom: Align unipro clk attributes as per Hardware specification

From: Nitin Rawat
Date: Thu Aug 31 2023 - 05:12:02 EST




On 8/28/2023 1:38 PM, Manivannan Sadhasivam wrote:
On Wed, Aug 23, 2023 at 09:14:11PM +0530, Nitin Rawat wrote:
Currently CORE_CLK_1US_CYCLES, PA_VS_CORE_CLK_40NS_CYCLES are configured
in clk scaling post change ops. Move this to clk scaling pre change ops to
align with the hardware specification.


Does this mean, the driver was doing the clk scaling at the wrong time? If so,
this patch should be moved ahead of all patches, should have fixes tag and CC
stable list.

- Mani


-- Functionality wise there is no affect with this patch. Our Qcom internal Hardware specification suggest to program these timers
in pre clk scale. SO we wanted to align with the HPG.

-Nitin




Co-developed-by: Naveen Kumar Goud Arepalli <quic_narepall@xxxxxxxxxxx>
Signed-off-by: Naveen Kumar Goud Arepalli <quic_narepall@xxxxxxxxxxx>
Signed-off-by: Nitin Rawat <quic_nitirawa@xxxxxxxxxxx>
---
drivers/ufs/host/ufs-qcom.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/drivers/ufs/host/ufs-qcom.c b/drivers/ufs/host/ufs-qcom.c
index 8162b19191a9..491c0173603e 100644
--- a/drivers/ufs/host/ufs-qcom.c
+++ b/drivers/ufs/host/ufs-qcom.c
@@ -1399,12 +1399,6 @@ static int ufs_qcom_set_core_clk_ctrl(struct ufs_hba *hba,
}

static int ufs_qcom_clk_scale_up_pre_change(struct ufs_hba *hba)
-{
- /* nothing to do as of now */
- return 0;
-}
-
-static int ufs_qcom_clk_scale_up_post_change(struct ufs_hba *hba)
{
struct ufs_qcom_host *host = ufshcd_get_variant(hba);

@@ -1414,6 +1408,11 @@ static int ufs_qcom_clk_scale_up_post_change(struct ufs_hba *hba)
return ufs_qcom_cfg_core_clk_ctrl(hba);
}

+static int ufs_qcom_clk_scale_up_post_change(struct ufs_hba *hba)
+{
+ return 0;
+}
+
static int ufs_qcom_clk_scale_down_pre_change(struct ufs_hba *hba)
{
struct ufs_qcom_host *host = ufshcd_get_variant(hba);
--
2.17.1