diff --git a/drivers/clk/qcom/clk-rpmh.c b/drivers/clk/qcom/clk-rpmh.c index 3dc8d2cb84fa..1a0bcf8f8ff1 100644 --- a/drivers/clk/qcom/clk-rpmh.c +++ b/drivers/clk/qcom/clk-rpmh.c @@ -487,6 +487,27 @@ static const struct clk_rpmh_desc clk_rpmh_lahaina = { .num_clks = ARRAY_SIZE(lahaina_rpmh_clocks), }; +static struct clk_hw *shima_rpmh_clocks[] = { + [RPMH_CXO_CLK] = &lahaina_bi_tcxo.hw, + [RPMH_CXO_CLK_A] = &lahaina_bi_tcxo_ao.hw, + [RPMH_LN_BB_CLK2] = &lahaina_ln_bb_clk2.hw, + [RPMH_LN_BB_CLK2_A] = &lahaina_ln_bb_clk2_ao.hw, + [RPMH_RF_CLK1] = &lahaina_rf_clk1.hw, + [RPMH_RF_CLK1_A] = &lahaina_rf_clk1_ao.hw, + [RPMH_RF_CLK3] = &lahaina_rf_clk3.hw, + [RPMH_RF_CLK3_A] = &lahaina_rf_clk3_ao.hw, + [RPMH_RF_CLK4] = &lahaina_rf_clk4.hw, + [RPMH_RF_CLK4_A] = &lahaina_rf_clk4_ao.hw, + [RPMH_IPA_CLK] = &lahaina_ipa.hw, + [RPMH_PKA_CLK] = &lahaina_pka.hw, + [RPMH_HWKM_CLK] = &lahaina_hwkm.hw, +}; + +static const struct clk_rpmh_desc clk_rpmh_shima = { + .clks = shima_rpmh_clocks, + .num_clks = ARRAY_SIZE(shima_rpmh_clocks), +}; + static struct clk_hw *of_clk_rpmh_hw_get(struct of_phandle_args *clkspec, void *data) { @@ -582,6 +603,7 @@ static const struct of_device_id clk_rpmh_match_table[] = { { .compatible = "qcom,kona-rpmh-clk", .data = &clk_rpmh_kona}, { .compatible = "qcom,sm8150-rpmh-clk", .data = &clk_rpmh_sm8150}, { .compatible = "qcom,lahaina-rpmh-clk", .data = &clk_rpmh_lahaina}, + { .compatible = "qcom,shima-rpmh-clk", .data = &clk_rpmh_shima}, { } }; MODULE_DEVICE_TABLE(of, clk_rpmh_match_table);