Merge lpasscc clocks into lpass_aon clk_regmap structure as they are using same register space. In existing implementation, lpasscc clocks and lpass_aon clocks are being registered exclusively and overlapping if both of them are to be used. This is required to avoid such overlapping and to register lpasscc clocks and lpass_aon clocks simultaneously. Fixes: 4ab43d171181 ("clk: qcom: Add lpass clock controller driver for SC7280") Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@xxxxxxxxxxx> Tested-by: Mohammad Rafi Shaik <quic_mohs@xxxxxxxxxxx> --- drivers/clk/qcom/lpassaudiocc-sc7280.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/drivers/clk/qcom/lpassaudiocc-sc7280.c b/drivers/clk/qcom/lpassaudiocc-sc7280.c index 1339f92..732ecc4 100644 --- a/drivers/clk/qcom/lpassaudiocc-sc7280.c +++ b/drivers/clk/qcom/lpassaudiocc-sc7280.c @@ -660,6 +660,8 @@ static struct clk_regmap *lpass_aon_cc_sc7280_clocks[] = { [LPASS_AON_CC_TX_MCLK_2X_CLK] = &lpass_aon_cc_tx_mclk_2x_clk.clkr, [LPASS_AON_CC_TX_MCLK_CLK] = &lpass_aon_cc_tx_mclk_clk.clkr, [LPASS_AON_CC_TX_MCLK_RCG_CLK_SRC] = &lpass_aon_cc_tx_mclk_rcg_clk_src.clkr, + [LPASS_Q6_AHBM_CLK] = &lpass_q6ss_ahbm_clk.clkr, + [LPASS_Q6_AHBS_CLK] = &lpass_q6ss_ahbs_clk.clkr, }; static struct gdsc *lpass_aon_cc_sc7280_gdscs[] = { @@ -826,10 +828,12 @@ static int lpass_aon_cc_sc7280_probe(struct platform_device *pdev) return ret; if (of_property_read_bool(pdev->dev.of_node, "qcom,adsp-pil-mode")) { - lpass_audio_cc_sc7280_regmap_config.name = "cc"; - desc = &lpass_cc_sc7280_desc; - ret = qcom_cc_probe(pdev, desc); - goto exit; + res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "cc"); + if (res) { + lpass_audio_cc_sc7280_regmap_config.name = "cc"; + desc = &lpass_cc_sc7280_desc; + return qcom_cc_probe(pdev, desc); + } } lpass_audio_cc_sc7280_regmap_config.name = "lpasscc_aon"; -- 2.7.4