summaryrefslogtreecommitdiff
path: root/drivers/clk
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/clk')
-rw-r--r--drivers/clk/qcom/clock-gcc-8936.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/drivers/clk/qcom/clock-gcc-8936.c b/drivers/clk/qcom/clock-gcc-8936.c
index 873b9093e504..1d1c8ebf0d53 100644
--- a/drivers/clk/qcom/clock-gcc-8936.c
+++ b/drivers/clk/qcom/clock-gcc-8936.c
@@ -2856,7 +2856,6 @@ static struct clk_lookup msm_clocks_lookup[] = {
/* RCGs */
CLK_LIST(apss_ahb_clk_src),
CLK_LIST(camss_top_ahb_clk_src),
- CLK_LIST(crypto_clk_src),
CLK_LIST(csi0_clk_src),
CLK_LIST(csi1_clk_src),
CLK_LIST(csi2_clk_src),
@@ -2908,9 +2907,6 @@ static struct clk_lookup msm_clocks_lookup[] = {
/* Voteable Clocks */
CLK_LIST(gcc_blsp1_ahb_clk),
CLK_LIST(gcc_boot_rom_ahb_clk),
- CLK_LIST(gcc_crypto_ahb_clk),
- CLK_LIST(gcc_crypto_axi_clk),
- CLK_LIST(gcc_crypto_clk),
CLK_LIST(gcc_prng_ahb_clk),
CLK_LIST(gcc_apss_tcu_clk),
CLK_LIST(gcc_gfx_tbu_clk),
@@ -3014,6 +3010,14 @@ static struct clk_lookup msm_clocks_lookup[] = {
CLK_LIST(wcnss_m_clk),
};
+static struct clk_lookup msm_clocks_gcc_8936_crypto[] = {
+ /* Crypto clocks */
+ CLK_LOOKUP_OF("core_clk", gcc_crypto_clk, "scm"),
+ CLK_LOOKUP_OF("iface_clk", gcc_crypto_ahb_clk, "scm"),
+ CLK_LOOKUP_OF("bus_clk", gcc_crypto_axi_clk, "scm"),
+ CLK_LOOKUP_OF("core_clk_src", crypto_clk_src, "scm"),
+};
+
static int msm_gcc_probe(struct platform_device *pdev)
{
struct resource *res;
@@ -3070,6 +3074,12 @@ static int msm_gcc_probe(struct platform_device *pdev)
if (ret)
return ret;
+ ret = of_msm_clock_register(pdev->dev.of_node,
+ msm_clocks_gcc_8936_crypto,
+ ARRAY_SIZE(msm_clocks_gcc_8936_crypto));
+ if (ret)
+ return ret;
+
clk_set_rate(&apss_ahb_clk_src.c, 19200000);
clk_prepare_enable(&apss_ahb_clk_src.c);