From 1a58793f4a4afc28d4ed145f00a07272a4ff60be Mon Sep 17 00:00:00 2001 From: Laxminath Kasam Date: Fri, 1 Nov 2019 12:18:39 +0530 Subject: [PATCH] asoc: codecs: CSR access requires AHB clock from bolero 1.1 From bolero 1.1, Bolero and SWR CSR moving to AHB clock and no need to enable other macro RCG clocks. Change-Id: I6663196a88dbf07868d6426bdda98f33e42004d1 Signed-off-by: Laxminath Kasam --- asoc/codecs/bolero/bolero-cdc.c | 36 ++++++++++++++++++++------------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/asoc/codecs/bolero/bolero-cdc.c b/asoc/codecs/bolero/bolero-cdc.c index dde471972335..ac8d69376692 100644 --- a/asoc/codecs/bolero/bolero-cdc.c +++ b/asoc/codecs/bolero/bolero-cdc.c @@ -104,21 +104,25 @@ static int __bolero_reg_read(struct bolero_priv *priv, if (priv->macro_params[VA_MACRO].dev) pm_runtime_get_sync(priv->macro_params[VA_MACRO].dev); - /* Request Clk before register access */ - ret = bolero_clk_rsc_request_clock(priv->macro_params[macro_id].dev, + if (priv->version < BOLERO_VERSION_2_0) { + /* Request Clk before register access */ + ret = bolero_clk_rsc_request_clock(priv->macro_params[macro_id].dev, priv->macro_params[macro_id].default_clk_id, priv->macro_params[macro_id].clk_id_req, true); - if (ret < 0) { - dev_err_ratelimited(priv->dev, - "%s: Failed to enable clock, ret:%d\n", __func__, ret); - goto err; + if (ret < 0) { + dev_err_ratelimited(priv->dev, + "%s: Failed to enable clock, ret:%d\n", + __func__, ret); + goto err; + } } bolero_ahb_read_device( priv->macro_params[macro_id].io_base, reg, val); - bolero_clk_rsc_request_clock(priv->macro_params[macro_id].dev, + if (priv->version < BOLERO_VERSION_2_0) + bolero_clk_rsc_request_clock(priv->macro_params[macro_id].dev, priv->macro_params[macro_id].default_clk_id, priv->macro_params[macro_id].clk_id_req, false); @@ -148,21 +152,25 @@ static int __bolero_reg_write(struct bolero_priv *priv, if (priv->macro_params[VA_MACRO].dev) pm_runtime_get_sync(priv->macro_params[VA_MACRO].dev); - /* Request Clk before register access */ - ret = bolero_clk_rsc_request_clock(priv->macro_params[macro_id].dev, + if (priv->version < BOLERO_VERSION_2_0) { + /* Request Clk before register access */ + ret = bolero_clk_rsc_request_clock(priv->macro_params[macro_id].dev, priv->macro_params[macro_id].default_clk_id, priv->macro_params[macro_id].clk_id_req, true); - if (ret < 0) { - dev_err_ratelimited(priv->dev, - "%s: Failed to enable clock, ret:%d\n", __func__, ret); - goto err; + if (ret < 0) { + dev_err_ratelimited(priv->dev, + "%s: Failed to enable clock, ret:%d\n", + __func__, ret); + goto err; + } } bolero_ahb_write_device( priv->macro_params[macro_id].io_base, reg, val); - bolero_clk_rsc_request_clock(priv->macro_params[macro_id].dev, + if (priv->version < BOLERO_VERSION_2_0) + bolero_clk_rsc_request_clock(priv->macro_params[macro_id].dev, priv->macro_params[macro_id].default_clk_id, priv->macro_params[macro_id].clk_id_req, false);