From 9b412a97b1292ecb278d743f1894ee29d4f3f6d1 Mon Sep 17 00:00:00 2001 From: Taniya Das Date: Tue, 29 Apr 2014 19:16:58 +0530 Subject: clk: qcom: clock-gcc-8936: Add crypto lookup for secure pil Crypto clocks are needed for SCM communication with TZ. SCM driver turns on crypto clocks prior to SCM call. Change-Id: I073178a911b0a5b11e3905dc20cf5737da0fb8b6 Signed-off-by: Taniya Das --- drivers/clk/qcom/clock-gcc-8936.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'drivers/clk') 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); -- cgit v1.2.3