| From a83b73cdaf7e0c076efa365a406941909dbc7b8e Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Thu, 27 Nov 2025 23:27:39 +0530 |
| Subject: clk: qcom: gcc-sdx75: Update the SDCC RCGs to use shared_floor_ops |
| |
| From: Jagadeesh Kona <jagadeesh.kona@oss.qualcomm.com> |
| |
| [ Upstream commit 4b057462bb61a6571608ba393e6e018c9da9c9c3 ] |
| |
| Use shared_floor_ops for the SDCC RCGs so the RCG is safely parked |
| during disable and the new parent configuration is programmed in |
| hardware only when the new parent is enabled, avoiding cases where |
| the RCG configuration fails to update. |
| |
| Fixes: 108cdc09b2de ("clk: qcom: Add GCC driver support for SDX75") |
| Reviewed-by: Taniya Das <taniya.das@oss.qualcomm.com> |
| Reviewed-by: Imran Shaik <imran.shaik@oss.qualcomm.com> |
| Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> |
| Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> |
| Signed-off-by: Jagadeesh Kona <jagadeesh.kona@oss.qualcomm.com> |
| Link: https://lore.kernel.org/r/20251127-sdcc_shared_floor_ops-v2-4-473afc86589c@oss.qualcomm.com |
| Signed-off-by: Bjorn Andersson <andersson@kernel.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/clk/qcom/gcc-sdx75.c | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| diff --git a/drivers/clk/qcom/gcc-sdx75.c b/drivers/clk/qcom/gcc-sdx75.c |
| index 453a6bf8e8786..1f3cd58483a2d 100644 |
| --- a/drivers/clk/qcom/gcc-sdx75.c |
| +++ b/drivers/clk/qcom/gcc-sdx75.c |
| @@ -1033,7 +1033,7 @@ static struct clk_rcg2 gcc_sdcc1_apps_clk_src = { |
| .name = "gcc_sdcc1_apps_clk_src", |
| .parent_data = gcc_parent_data_17, |
| .num_parents = ARRAY_SIZE(gcc_parent_data_17), |
| - .ops = &clk_rcg2_floor_ops, |
| + .ops = &clk_rcg2_shared_floor_ops, |
| }, |
| }; |
| |
| @@ -1057,7 +1057,7 @@ static struct clk_rcg2 gcc_sdcc2_apps_clk_src = { |
| .name = "gcc_sdcc2_apps_clk_src", |
| .parent_data = gcc_parent_data_18, |
| .num_parents = ARRAY_SIZE(gcc_parent_data_18), |
| - .ops = &clk_rcg2_floor_ops, |
| + .ops = &clk_rcg2_shared_floor_ops, |
| }, |
| }; |
| |
| -- |
| 2.51.0 |
| |