Skip to content

Commit da94a81

Browse files
Taniya Dasandersson
authored andcommitted
clk: qcom: gcc: Set FORCE_MEM_CORE_ON for gcc_ufs_axi_clk for 8650/8750
Update the force mem core bit for UFS AXI clock to force the core on signal to remain active during halt state of the clk. If force mem core bit of the clock is not set, the memories of the subsystem will not retain the logic across power states. This is required for the MCQ feature of the UFS driver. Signed-off-by: Taniya Das <quic_tdas@quicinc.com> Reviewed-by: Imran Shaik <quic_imrashai@quicinc.com> Link: https://lore.kernel.org/r/20250414-gcc_ufs_mem_core-v1-1-67b5529b9b5d@quicinc.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
1 parent 166e65b commit da94a81

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

drivers/clk/qcom/gcc-sm8650.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3817,7 +3817,9 @@ static int gcc_sm8650_probe(struct platform_device *pdev)
38173817
qcom_branch_set_clk_en(regmap, 0x32004); /* GCC_VIDEO_AHB_CLK */
38183818
qcom_branch_set_clk_en(regmap, 0x32030); /* GCC_VIDEO_XO_CLK */
38193819

3820+
/* FORCE_MEM_CORE_ON for ufs phy ice core and gcc ufs phy axi clocks */
38203821
qcom_branch_set_force_mem_core(regmap, gcc_ufs_phy_ice_core_clk, true);
3822+
qcom_branch_set_force_mem_core(regmap, gcc_ufs_phy_axi_clk, true);
38213823

38223824
/* Clear GDSC_SLEEP_ENA_VOTE to stop votes being auto-removed in sleep. */
38233825
regmap_write(regmap, 0x52150, 0x0);

drivers/clk/qcom/gcc-sm8750.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3244,8 +3244,9 @@ static int gcc_sm8750_probe(struct platform_device *pdev)
32443244
regmap_update_bits(regmap, 0x52010, BIT(20), BIT(20));
32453245
regmap_update_bits(regmap, 0x52010, BIT(21), BIT(21));
32463246

3247-
/* FORCE_MEM_CORE_ON for ufs phy ice core clocks */
3247+
/* FORCE_MEM_CORE_ON for ufs phy ice core and gcc ufs phy axi clocks */
32483248
qcom_branch_set_force_mem_core(regmap, gcc_ufs_phy_ice_core_clk, true);
3249+
qcom_branch_set_force_mem_core(regmap, gcc_ufs_phy_axi_clk, true);
32493250

32503251
return qcom_cc_really_probe(&pdev->dev, &gcc_sm8750_desc, regmap);
32513252
}

0 commit comments

Comments
 (0)