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

clk: qcom: clk-alpha-pll: Add support for Taycan EKO_T PLL

Add clock operations and register offsets to enable control of the Taycan
EKO_T PLL, allowing for proper configuration and management of the PLL.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Taniya Das <taniya.das@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250825-glymur-clock-controller-v5-v5-5-01b8c8681bcd@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>

authored by

Taniya Das and committed by
Bjorn Andersson
2c7a7fe4 ebcb9db9

+6
+6
drivers/clk/qcom/clk-alpha-pll.h
··· 29 29 CLK_ALPHA_PLL_TYPE_LUCID_OLE, 30 30 CLK_ALPHA_PLL_TYPE_PONGO_ELU, 31 31 CLK_ALPHA_PLL_TYPE_TAYCAN_ELU, 32 + CLK_ALPHA_PLL_TYPE_TAYCAN_EKO_T = CLK_ALPHA_PLL_TYPE_TAYCAN_ELU, 32 33 CLK_ALPHA_PLL_TYPE_RIVIAN_EVO, 33 34 CLK_ALPHA_PLL_TYPE_DEFAULT_EVO, 34 35 CLK_ALPHA_PLL_TYPE_BRAMMO_EVO, ··· 193 192 194 193 extern const struct clk_ops clk_alpha_pll_lucid_evo_ops; 195 194 #define clk_alpha_pll_taycan_elu_ops clk_alpha_pll_lucid_evo_ops 195 + #define clk_alpha_pll_taycan_eko_t_ops clk_alpha_pll_lucid_evo_ops 196 196 extern const struct clk_ops clk_alpha_pll_reset_lucid_evo_ops; 197 197 #define clk_alpha_pll_reset_lucid_ole_ops clk_alpha_pll_reset_lucid_evo_ops 198 198 extern const struct clk_ops clk_alpha_pll_fixed_lucid_evo_ops; 199 199 #define clk_alpha_pll_fixed_lucid_ole_ops clk_alpha_pll_fixed_lucid_evo_ops 200 200 #define clk_alpha_pll_fixed_taycan_elu_ops clk_alpha_pll_fixed_lucid_evo_ops 201 + #define clk_alpha_pll_fixed_taycan_eko_t_ops clk_alpha_pll_fixed_lucid_evo_ops 201 202 extern const struct clk_ops clk_alpha_pll_postdiv_lucid_evo_ops; 202 203 #define clk_alpha_pll_postdiv_lucid_ole_ops clk_alpha_pll_postdiv_lucid_evo_ops 203 204 #define clk_alpha_pll_postdiv_taycan_elu_ops clk_alpha_pll_postdiv_lucid_evo_ops 205 + #define clk_alpha_pll_postdiv_taycan_eko_t_ops clk_alpha_pll_postdiv_lucid_evo_ops 204 206 205 207 extern const struct clk_ops clk_alpha_pll_pongo_elu_ops; 206 208 extern const struct clk_ops clk_alpha_pll_rivian_evo_ops; ··· 236 232 void clk_pongo_elu_pll_configure(struct clk_alpha_pll *pll, struct regmap *regmap, 237 233 const struct alpha_pll_config *config); 238 234 #define clk_taycan_elu_pll_configure(pll, regmap, config) \ 235 + clk_lucid_evo_pll_configure(pll, regmap, config) 236 + #define clk_taycan_eko_t_pll_configure(pll, regmap, config) \ 239 237 clk_lucid_evo_pll_configure(pll, regmap, config) 240 238 241 239 void clk_rivian_evo_pll_configure(struct clk_alpha_pll *pll, struct regmap *regmap,