Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

clk: qcom: rpmh: Add support for X1E80100 rpmh clocks

Adds the RPMH clocks present in X1E80100 SoC

Co-developed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Rajendra Nayak <quic_rjendra@quicinc.com>
Co-developed-by: Sibi Sankar <quic_sibis@quicinc.com>
Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com>
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Link: https://lore.kernel.org/r/20231205061002.30759-5-quic_sibis@quicinc.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>

authored by

Rajendra Nayak and committed by
Bjorn Andersson
874bc7be 161b7c40

+24
+24
drivers/clk/qcom/clk-rpmh.c
··· 372 372 DEFINE_CLK_RPMH_VRM(clk4, _a1, "clka4", 1); 373 373 DEFINE_CLK_RPMH_VRM(clk5, _a1, "clka5", 1); 374 374 375 + DEFINE_CLK_RPMH_VRM(clk3, _a2, "clka3", 2); 375 376 DEFINE_CLK_RPMH_VRM(clk4, _a2, "clka4", 2); 376 377 DEFINE_CLK_RPMH_VRM(clk5, _a2, "clka5", 2); 377 378 DEFINE_CLK_RPMH_VRM(clk6, _a2, "clka6", 2); ··· 771 770 .num_clks = ARRAY_SIZE(sm4450_rpmh_clocks), 772 771 }; 773 772 773 + static struct clk_hw *x1e80100_rpmh_clocks[] = { 774 + [RPMH_CXO_CLK] = &clk_rpmh_bi_tcxo_div2.hw, 775 + [RPMH_CXO_CLK_A] = &clk_rpmh_bi_tcxo_div2_ao.hw, 776 + [RPMH_LN_BB_CLK1] = &clk_rpmh_clk6_a2.hw, 777 + [RPMH_LN_BB_CLK1_A] = &clk_rpmh_clk6_a2_ao.hw, 778 + [RPMH_LN_BB_CLK2] = &clk_rpmh_clk7_a2.hw, 779 + [RPMH_LN_BB_CLK2_A] = &clk_rpmh_clk7_a2_ao.hw, 780 + [RPMH_LN_BB_CLK3] = &clk_rpmh_clk8_a2.hw, 781 + [RPMH_LN_BB_CLK3_A] = &clk_rpmh_clk8_a2_ao.hw, 782 + [RPMH_RF_CLK3] = &clk_rpmh_clk3_a2.hw, 783 + [RPMH_RF_CLK3_A] = &clk_rpmh_clk3_a2_ao.hw, 784 + [RPMH_RF_CLK4] = &clk_rpmh_clk4_a2.hw, 785 + [RPMH_RF_CLK4_A] = &clk_rpmh_clk4_a2_ao.hw, 786 + [RPMH_RF_CLK5] = &clk_rpmh_clk5_a2.hw, 787 + [RPMH_RF_CLK5_A] = &clk_rpmh_clk5_a2_ao.hw, 788 + }; 789 + 790 + static const struct clk_rpmh_desc clk_rpmh_x1e80100 = { 791 + .clks = x1e80100_rpmh_clocks, 792 + .num_clks = ARRAY_SIZE(x1e80100_rpmh_clocks), 793 + }; 794 + 774 795 static struct clk_hw *of_clk_rpmh_hw_get(struct of_phandle_args *clkspec, 775 796 void *data) 776 797 { ··· 895 872 { .compatible = "qcom,sm8550-rpmh-clk", .data = &clk_rpmh_sm8550}, 896 873 { .compatible = "qcom,sm8650-rpmh-clk", .data = &clk_rpmh_sm8650}, 897 874 { .compatible = "qcom,sc7280-rpmh-clk", .data = &clk_rpmh_sc7280}, 875 + { .compatible = "qcom,x1e80100-rpmh-clk", .data = &clk_rpmh_x1e80100}, 898 876 { } 899 877 }; 900 878 MODULE_DEVICE_TABLE(of, clk_rpmh_match_table);